【发布时间】:2017-08-24 14:26:59
【问题描述】:
我的应用包含大量图片,因此目前签名的 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
有人有什么想法吗?
下面的编辑是比较 hdpi 发布版本和 mdpi 发布版本的两个屏幕截图。您可以清楚地看到它们的大小相同:
【问题讨论】:
-
您在使用 Flavors 吗?我对我的一些应用程序进行了一些测试,其中一些是我使用的味道不起作用,但在其他方面没有任何味道它可以工作
-
不,我没有在这个应用程序上使用风味
-
你能发布两个生成的apk比较的打印屏幕吗?使用分析 apk 功能并将其与另一个比较?
-
@NunoGomes 我附上了两张截图。分析 APK 表明它们具有完全相同的内容,每个构建都具有所有密度资源。
-
我最终使用 Android Studio 3 Beta 进行了密度拆分。我为使用 Android Studio 3 创建了一个新的 git 分支。我认为潜在的问题可能与我在 Android Studio 2 中使用的 retrolambda 插件有关,以便使用 Java 8,但我不确定。