优化
发现我们 link 大概优化了 700 kb继续。
注意
因为 link 是检查有没有引用来做的判断是否使用了资源,那么如果是这种方式勒,所以在删除的时候一定要谨慎。
//动态获取资源 id , 未直接使用 R.xx.xx ,则这个 id 代表的资源会被认为没有使用过(类似不能混淆反射类)
int indetifier =getResources().getIdentifier(“img_bubble_receive”, “drawable”, getPackageName()); getResources().getDrawable(indetifier);
5. 开启混淆
优化了大概 1.7M 继续。
6.移除无用资源 shinkResource
- 开启 shinkResource = true
buildTypes {
release {
minifyEnabled true
shrinkResources = true
proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’
}
debug {
shrinkResources = true
minifyEnabled true
proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’
}
}
这个有可能 link 删除了无用资源,所以没有在优化了
7.开启删除无用资源 (严格模式和普通模式) - 这个我这里就不可测试,你们下来可以测试下效果
普通模式也就是自定义模式
如果您有想要保留或舍弃的特定资源,请在您的项目中创建一个包含 <resources>
标记的 XML 文件,并在 too