为 Git 中的免费和付费应用风格更改 Android 包名称

Alter Android Package Names for Free & Paid App Flavors in Git

我开发了同一个应用的两个版本:免费版和付费版。两个分支都基于 Git 中的 "master" 分支。有时我将 master 分支合并到 "free" 和 "paid" 分支中以使它们保持最新。 但是免费和付费应用程序必须有不同的包名。它不会混淆 git 提交历史,或者我是否应该在应用程序构建之前临时重命名包名称并将原始包名称保留在 Git 中?

But it is necessary for the free and payed apps to have different package names.

您可以在 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'
       }
}