我们的应用程序有三个环境 - DEV、QA 和 PROD。
现在我们已经为这三个环境创建了三个 AndroidManifest 文件(如 AndroidManifest_QA.xml),当我们想要发布一个新版本时,我们必须每次都更改文件名,这不是万无一失的。
所以,我想知道是否有更简单的方法来处理这种情况?
提前致谢。
我们的应用程序有三个环境 - DEV、QA 和 PROD。
现在我们已经为这三个环境创建了三个 AndroidManifest 文件(如 AndroidManifest_QA.xml),当我们想要发布一个新版本时,我们必须每次都更改文件名,这不是万无一失的。
所以,我想知道是否有更简单的方法来处理这种情况?
提前致谢。
我会选择 Gradle Flavours:
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
或者您可以通过使用构建变体使其更加分离。我认为这是您真正想要的:
productFlavors {
pro {
applicationId = "com.example.my.pkg.pro"
}
free {
applicationId = "com.example.my.pkg.free"
}
}
buildTypes {
debug {
applicationIdSuffix ".debug"
}
}
一个很好的教程: http ://www.techotopia.com/index.php/An_Android_Studio_Gradle_Build_Variants_Example
文章:http: //developer.android.com/tools/building/configuring-gradle.html
让我们考虑来自 techotopia.com 的以下示例
productFlavors {
phone {
applicationId
"com.ebookfrenzy.buildexample.app.phone"
versionName "1.0-phone"
}
tablet {
applicationId
"com.ebookfrenzy.buildexample.app.tablet"
versionName "1.0-tablet"
}
}
如果您需要在代码级别分离falvours ,请参阅下面的 Xavier Ducrohet stackoverflow 链接: