在Git中更改免费和付费应用程序风味的Android软件包名称

Sci*_*cit 3 git android gradle android-gradle-plugin package-name

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

SBe*_*413 6

但是,免费和付费应用程序必须具有不同的包名称.

您可以在gradle构建文件中处理此问题.只是做出不同的口味.使用applicationIdSuffix标记来更改构建或付费应用程序版本的包.例如:

productFlavors {
    free {
        applicationIdSuffix ".free"
    }

   paid {
       // paid package name does not change.
   }
}
Run Code Online (Sandbox Code Playgroud)

或者,您可以使用packageName标记来完全更改每个构建风格.

productFlavors {
    free {
        packageName 'com.example.product.free'
    }

   paid {
       packageName 'com.example.product.paid'
       }
}
Run Code Online (Sandbox Code Playgroud)