Gradle Multiproject 与 Android 风格

Gradle Multiproject vs Android flavors

提问人:Biscuit 提问时间:2/21/2020 最后编辑:Biscuit 更新时间:2/25/2020 访问量:51

问:

我正在尝试创建两个具有通用代码的 android 应用程序,所以我正在记录 Gradle Flavor 和多项目。

项目限制:

  • App-A并取决于App-Bcommon
  • App-A并且彼此不认识。App-B
  • App-A将具有一些不存在的功能App-Bcommon
  • App-B将具有一些不存在的功能App-Acommon
  • App-A并且会有自己的App-BAndroidManifest.xml

我也在尝试使用 MVP 设计模式,我不知道它是否会在项目中产生任何影响。

我正在考虑使用看起来像这样的架构。

|--- Common
        |--- src
            |--- main
            |   |--- java
|--- App-A
        |--- src
            |--- main
            |   |--- java // For specific code
|--- App-B
        |--- src
            |--- main
            |   |--- java // For specific code

用例:例如,我需要在 上添加一个功能。我可以在 App-A 上扩展/实现类/接口来添加此功能,还是必须复制 中的所有内容?MainActivityAppAMainActivitymain

我看到一些关于使用的建议,因为它是可用的,并且可以区分风味,但是我注意到通过逆向工程我制作的示例,它创建了两个 MainActivity。BuildConfig.FLAVOR

Screenshot 2020-02-21 at 17.06.03|538x274, 50%

我应该担心使用flavor的APK的大小会变大吗?

你会建议我做什么?

Android android-gradle-plugin android-productflavors

评论

0赞 Michael 2/25/2020
我不清楚您在使用风格时如何组织源代码。也就是说,您是否将特定于口味的代码放在特定于口味的源代码目录中(例如,等)?src/flavorA/javasrc/flavorB/java
0赞 Biscuit 2/25/2020
是的,每个都有自己特定于风格的代码,两者的通用代码都在src/flavorA/javascr/flavorB/javascr/main/java

答: 暂无答案