我们有一个项目,我们需要发布两个版本,这些版本具有近99%的相似功能,但包名称和应用程序名称不同。
我们在git中为该项目创建了一个分支,该分支处理客户端的版本,而主分支是我们的版本。
现在,问题是每次我们修复主版本的一些错误时,我们需要在客户端版本上执行相同的操作。但是,这只会使工作量增加一倍。如果我们只是将它直接推送到该分支,由于包名称的不同,将会有很多冲突需要解决。
这有一个很好的解决方案吗?谢谢!
答案 0 :(得分:1)
JLT,
在gradle中查看构建变体。这将允许您创建不同的口味和包。
http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Variants
您也可以使用库,但有时可能会变得有点复杂。我已经完成了两项工作,并且更喜欢使用gradle完成所有工作,然后我可以专注于开发而不是额外的库,也许还有多个代码库。
以下是您可以在build.gradle文件中使用的示例:
android {
final PACKAGE_NAME = "com.example"
productFlavors {
app1 {
applicationId PACKAGE_NAME + ".app1"
}
app2 {
applicationId PACKAGE_NAME + ".app2"
}
}
}