我在项目风格配置方面遇到了问题。
我想像这样定义项目结构:
三个应用程序(具有非常相似的功能)口味,每个版本都有免费和专业版,这意味着将有6个应用程序版本:- A(专业版,免费)- B(专业版,免费)- C(专业,免费)。
例如,现在我构建项目 B(免费版本)并将资源与 B(专业版)合并。当缺少来自 B(免费版本)的资源时,则从专业版中获取它,然后当它也丢失时,从 main 获取默认资源。
重要的是每个版本,例如A(免费)和A(专业版)都有一些不同的资源(例如:应用程序图标,徽标等)
实际上我有这样的东西,但它不能像我想要的那样工作。
productFlavors {
aPro {
applicationId "com.example.apro"
}
aFree {
applicationId "com.example.afree"
}
bPro {
applicationId "com.example.bpro"
}
bFree {
applicationId "com.example.bfree"
}
cPro {
applicationId "com.example.cpro"
}
cFree {
applicationId "com.example.cfree"
}
}
build.gradle
文件中执行的操作是正确的。除了 gradle 文件中的 gradle 配置外,您还需要在 app/src
文件夹下添加文件夹。所以项目结构是这样的:
Project
|---- app
| |---- build
| |---- libs
| |---- src
| |---- aPro
| |---- aFree
| |---- bPro
| |---- bFree
| |---- cPro
| |---- cFree
| |---- main
在主文件夹下,有您的主代码,例如函数、方法、资源。
在productFlavorName
文件夹下,您可以添加资源文件夹,添加应用程序图标,徽标等。
然后,在 Android Studio 中,打开Build Variants
选项卡(在 Android Studio 的左侧栏中,垂直),选择要调试的Build Variant
。
更多细节在此官方文档中。