我开发了同一个应用程序的两个版本:免费和付费版本。两个分支都基于Git中的“主”分支。有时我将master分支合并为“free”和“paid”分支以使它们保持最新状态。 但是,免费和付费应用程序必须具有不同的包名称。它不会混淆git commit history,或者我应该在app building之前临时重命名包名并将原始包名保存在Git中吗?
答案 0 :(得分:6)
但免费和付费应用程序必须具有不同的包名称。
您可以在gradle构建文件中处理此问题。只是做出不同的口味。使用applicationIdSuffix标记来更改构建或付费应用程序版本的包。例如:
productFlavors {
free {
applicationIdSuffix ".free"
}
paid {
// paid package name does not change.
}
}
或者,您可以使用packageName标记来完全改变每种构建风格。
productFlavors {
free {
packageName 'com.example.product.free'
}
paid {
packageName 'com.example.product.paid'
}
}