我的应用包含大量图片,因此目前签名的APK是> 100mb(约115mb)即使有优化的图像。我想使用密度分割来生成密度特定的构建。我目前在gradle文件中包含以下内容,但生成的APK大小相同,但仍包含所有资源。
// Configures multiple APKs based on screen density.
density {
// Configures multiple APKs based on screen density.
enable true
// Specifies a list of compatible screen size settings for the manifest.
compatibleScreens 'small', 'normal', 'large', 'xlarge'
}
我注意到其他人遇到了同样的问题,但没有人回复。我想对帖子发表评论,但我的声誉不够高:APK split by density still contains all resources
有没有人有任何想法?
下面的EDIT是比较hdpi版本构建和mdpi版本构建的两个屏幕截图。你可以清楚地看到它们的大小相同:
答案 0 :(得分:2)
最后我解决了这个问题
在我的情况下,我必须在应用程序gradle脚本上的resConfigs
块上删除defaultConfig
defaultConfig {
resConfigs "en", "id" //remove this line
//your other implementation
}
我不知道为什么,但似乎不知怎的resConfigs
打破了apk分裂
答案 1 :(得分:0)
density {
enable true
reset()
include "mdpi", "hdpi", "xhdpi", "xxhdpi",......
}
添加重置()并在您的代码中加入
答案 2 :(得分:0)
我不确定这是否是Android Studio 2的错误,但我可以使用Android Studio 3。
最初我觉得它可能是retrolambda插件的一个问题,但我并不积极。