随着项目的不断迭代,代码量跟资源文件不断增多。那么就会出现打包后的 APK 文件越来越大,这个会影响apk的下载量。一般人们偏向下载体积更小的apk. 常见有以下几种方式来降低apk的大小:
1 一个项目往往会历经多年,期间会有多人参与开发,这难免会带来很多冗余代码,无用代码等问题,使用AndroidStudio 的Lint检查,可以降低这个问题的出现,AndroidStudio->Analyze-Inspect Code ,Lint 是 Android Studio 提供的 代码扫描分析工具,它可以帮助我们发现代码结构 / 质量问题,同时提供一些解决方案,一般代码迭代版本一多,就会很容易会遗留一些无用的代码、资源文件,值得注意的是谨慎删除一些配置文件,因为有的时候第三方的集成可能需要在资源目录下添加配置值,Lint也会将其检查为无用文件,如果这时候删除掉,很容易造成程序问题,这就需要开发者之间有个文档留存,以来提示,避免误删;
2 移除无用资源 shinkResource 在gradle中添加配置:
buildTypes {release {minifyEnabled trueshrinkResources = trueproguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'}debug {shrinkResources = trueminifyEnabled trueproguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'}}
3 去除不必要的so库,在gradle中添加配置如下:
android{...defaultConfig{...ndk {//设置支持的SO库架构abiFilters "armeabi-v7a"}
}
}
4 代码混淆,在gradle使用minifyEnabled进行Proguard混淆的配置,如下:
android {buildTypes {release {minifyEnabled true}}}
优点:4.1 可以删除注释和不用的代码。4.2 将java文件名改成短名 4.3 将方法名改成短名
5 使用 微信AndroidResGuard进行资源混淆
未完待续...