Nou*_*vay 5 android gradle android-studio
现在我在gradle中有两个productFlavors.我需要添加第三个.现有的两种产品风味几乎包含所有内容.称他们为猫和狗 - 他们都是动物.我需要添加的第三种风格实际上是应用程序的沙盒版本.我们可以称之为自行车.
说我的应用现在有十二项活动,全部由Cat和Dog共享.但是自行车产品的味道应该只能访问其中三个活动和自行车需要拥有它自己的启动器活动.如何重构我的代码以智能地适应这种情况?同样,两种口味几乎分享所有东西,而一种口味与其他两种口味相比要少得多.
UPDATE
似乎有一种聪明的方法可以使用更改默认源设置配置来解决此问题.基本上,我会保留/mainsourceSet以用于整个应用程序中常见的所有内容; 一个/dogCat为所有sourceSet是常见的两种狗和猫; 和一个/bike仅属于Bike 的sourceSet.
在弄清楚了这么多之后,我仍然在编写gradle sourceSets部分时遇到一些问题
android {
...
sourceSets {
. . .
}
}
Run Code Online (Sandbox Code Playgroud)
您可以尝试以下两种方法:
在您的主要风格中实现所有活动( java/main 与 Gradle 定义的所有风格共享),并且每个风格的 Android 清单应该只引用它们需要工作的活动。在 Proguard 的帮助下,您可以确保未引用活动中未使用的代码不会部署在您的工件 (APK) 中。当您在每个风味的AndroidManifest.xml中定义时,您可以拥有不同的启动器
处理图书馆项目。这样您就可以在每种风格中加载不同的库集和不同的清单。
我将尝试在其他时间用一些例子来扩展这个答案。
| 归档时间: |
|
| 查看次数: |
497 次 |
| 最近记录: |