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来获取当前安装的app中指定文件的md5,可以和之前本地保存的进行比较。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容