背景
最近开发项目需要升级gradle,从4.0.0 升级到7.0.2后发现打release包体积变大了,对比完升级前后的包发现,只有dex文件增加了,其他的基本没啥变化,而且dex文件增加了7M多,一下懵逼了
解惑
排查了好久发现是,minSdkVersion 为28或大于28时AGP默认在apk打包时不压缩dex文件这导致了apk包大小增加了,需要开启AGP默认打包时压缩,需要添加下面代码
在build.gradle 配置
android{
//xxx 其他配置
//需要android标签内
packagingOptions {
dex {
//升级gradle之后dex文件变大,下面对dex文件进行压缩
useLegacyPackaging = true
}
}
}
从新打包后发现可以了
官方解释:
参考文档:官方文档地址