1

我希望 android 应用程序的不同产品风格有自己的资产包(或者可能根本没有)。尝试过类似的东西

android {
   productFlavors {
       one {
          assetPacks[":pack1"]
       }
       two {
          assetPacks[":pack2"]
       }
       three {
       }
   }
}

但这只是使用所有口味遇到的最后一行,因此所有口味都包括pack2. 有什么建议么?

4

1 回答 1

0

编辑:我找到了适合我需要的解决方案(我想它并不优雅但它有效),也许你也可以使用这个@KasperPeeters。因为我们使用脚本构建应用程序并且我们为每个构建变体调用构建命令,所以我决定使用 Gradle 命令行参数来控制资产是否应该包含在 aab 中(您应该能够轻松修改它以控制应该包含哪些资产) . 然后在build.gradle应用程序模块中我有一个检查:

if (project.hasProperty("includeAssets")) { assetPacks = [":<you_asset_name>"] }

并使用我调用命令的资产构建 aab ./gradlew :app:bundle[Variant] -PincludeAssets


我正在寻找类似的东西。到目前为止,我的发现是资产文件总是包含在生成的 aab 文件中。如果您想控制安装在设备上时哪些版本将下载文件,您必须使用install-time. 如果可行,我将on-demand尝试更新主题。

于 2021-07-07T04:57:31.767 回答