APK 大小分析
图片优化
- VectorDrawable
- tinyPng 有损压缩
- png→jpg
- jPG→Webp(反应在 小米2刷成4.xx的手机上,未能正确识别xml文件中描述的webp图片,导致界面起来后加载xml布局文件,文件加载webp失败,及 三星的部分机型上,部分有alpha背景部分的图会有一条很明显的黑线 )
- 大图缩小
- 去掉库中未用的默认图
- 有些图片改为从云端上获取
压缩
资源清理
- 去掉 删除armable-v7包的so
- 去掉X86so 包(反应有 测试反应好像有些机器容易崩溃,未能经过严格测试,所以主版本又复原了,只在个别渠道执行这条措施。)
- 去掉百度统计
- 去掉leadCloud
- 去除无用的库
- 使用更小的库
- Lint 检测,去除无用的资源
Gradle 优化
android {
defaultConfig {
resConfigs "zh"
}
}
- 开启shrinkResources、minifyEnabled
- proguard去符号表
- keepattributes SourceFile , LineNumberTable
可以注释掉 - proguard深度混淆代码
proguardFiles getDefaultProguardFile('proguardandroid.txt'),'proguard-project.txt
改为
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'),'proguard-project.txt'
代码处理
- 全版本兼容的着色方案,减少 selector文件,shape 文件
- Lint 清理
插件化
使用更小的库