android guadle中獲取文件md5

一些場景下需要在編譯時計算某個文件的md5,避免每次運行都計算

static def generateMD5(File s) {
    MessageDigest md = MessageDigest.getInstance("MD5")
    s.eachByte(4096, { bytes, size ->
        md.update(bytes, 0, size)
    })
    return md.digest().collect { String.format "%02x", it }.join()
}

def video_md5 = ""
task getMD5 {
    video_md5 = generateMD5(new File(rootProject.getRootDir().toString() + '/app/src/main/res/raw/welcome_video.mp4'))
    println "#### video_md5 == ${video_md5}"
}

android{
     ...
    defaultConfig{
         ...
         buildConfigField("String", "VIDEO_MD5", "\"$video_md5\"")
    }

在項目中使用的時候,通過BuildConfig.VIDEO_MD5來獲取當(dāng)前安裝的app中指定文件的md5,可以和之前本地保存的進(jìn)行比較。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容