gpt4 book ai didi

android - Gradle:如何让产品口味从 src/main 继承,除了一个

转载 作者:行者123 更新时间:2023-11-29 00:12:02 29 4
gpt4 key购买 nike

我想为我的 Android 应用程序使用产品风格,因为这似乎是一个很大的优势。但是有一件事我没有解决:

比方说,我有一个项目 Planets com.example.planets 我想为每个星球构建一个应用程序:

productFlavors {
mercury {
applicationId "com.example.planets.mercury"
}
venus {
applicationId "com.example.planets.venus"
}
...
}

很多代码是共享的,因此放在 src/main 文件夹中。

我还想在每个应用程序中使用相同的MainActivity地球应用程序除外,因为它在这个应用程序中有所不同。如果不在每个其他文件夹中复制非地球版本,我如何才能实现这一点?

我试图“覆盖”上面提到的 MainActivity 文件夹,但没有成功。

提前致谢!

最佳答案

我会建议这样的文件结构

    .
└── src
├── earth
│ └── java
│ └── com
│ └── example
│ └── app
│ ├── MainActivity.java // extends Activity + your code
│ └── SomeClass.java
├── main
│ └── java
│ └── com
│ └── example
│ └── app
│ ├── MainBaseActivity.java // extends Activity + your code
│ └── SomeClass.java
├── mercury
│ └── java
│ └── com
│ └── example
│ └── app
│ ├── MainActivity.java // extends MainBaseActivity + empty body
│ └── SomeClass.java
└── venus
└── java
└── com
└── example
└── app
│ ├── MainActivity.java // extends MainBaseActivity + empty body
│ └── SomeClass.java

其中 SomeClass.java 代表您所有的常用类和代码mercury 和 venus 将使用来自“main”的 MainActivity,而 earth 有它自己指定的。

关于android - Gradle:如何让产品口味从 src/main 继承,除了一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29587699/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com