我经常分析apks并尝试优化和减少尽可能多的地方。 我想知道如何删除可能从库中导入的资源,例如[common_google_login_btn_text..9.png等]
这些不会在项目的任何地方使用,但它们会出现在最终的apk中。
有没有办法可以完全删除这个drawable-xxhdpi-v4
?
有什么建议吗?除了分裂之外。
答案 0 :(得分:0)
在AndroidStudio中
重构 - >删除未使用的Resoursces - >重构
您可以为项目实施resConfigs以限制资源。将以下代码添加到build.gradle
defaultConfig {
// ...
resConfigs "en"
resConfigs "nodpi", "hdpi", "xhdpi"
}
您还可以使用shrinkResources true来减少应用程序大小。
buildTypes {
release {
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
您可以使用splits
。在build.gradle
。
android {
...
splits {
// Configures multiple APKs based on screen density.
density {
// Configures multiple APKs based on screen density.
enable true
// Specifies a list of screen densities Gradle should not create multiple APKs for.
exclude "ldpi", "xxhdpi", "xxxhdpi" // Exclude what you don't require
}}}
参考文档:https://developer.android.com/studio/build/shrink-code.html
参考文档:https://developer.android.com/studio/build/configure-apk-splits.html