0

在我们公司,我们正在创造一种产品,该产品出售给不同的客户,只改变视觉方面(徽标、商标、文本等......)。我们怀疑如何处理这个问题,因为我们需要维护一个基础(通过他们的测试)和这些产品的定制版本(不同的包名称和一些修改除外)。对我们来说更困难的是我们用 Git 和需要保持在一起的项目库来处理这个问题。我们需要保持轻松创建新产品并快速维护每个产品的更新

您建议使用哪种工作流程来处理此问题?我们混合了 git + 子模块 + 分支 + 库项目,但是很难创建一个 android libproyect 基础

4

1 回答 1

1

我不完全理解你的问题,所以如果你能写一些更多的信息,其他人会帮助你。我理解的部分是管理具有相同代码但资源和清单文件不同的多个项目的问题。在我们的项目中,我们在为 3 个不同的服务器开发时遇到了类似的问题,其中代码将保持不变,但链接、api 密钥和包名称需要更改,甚至徽标图像可能需要有所不同,有时会添加“集成图标/开发图标”等. 在这种情况下,我所做的是创建一个 Android 库项目,其中存储了所有共享的代码和资源,在我们的例子中,创建了 3 个引用该库并在 api 的 value 文件夹中具有特殊 res/drawable 文件夹和字符串的其他项目键和其他设置被存储。事实证明,这非常适合我们的目的,因为您只需为要运行的项目选择一个运行配置,Android 就会加载所需的资源。您可以对任意数量的项目执行此操作,而无需复制任何文件并占用 git 存储库中的空间。这种方法实际上允许您让您的设计师通过将不同的图像放在文件夹中来更改不同项目的可绘制对象,而无需开发人员或只需少量开发人员参与。如果你技术熟练,你甚至可以编写一些 ant 脚本来为他们​​构建和签署项目,这样他们就可以在设备上进行测试,看看真正的应用程序看起来如何。您可以对任意数量的项目执行此操作,而无需复制任何文件并占用 git 存储库中的空间。这种方法实际上允许您让您的设计师通过将不同的图像放在文件夹中来更改不同项目的可绘制对象,而无需开发人员或只需少量开发人员参与。如果你技术熟练,你甚至可以编写一些 ant 脚本来为他们​​构建和签署项目,这样他们就可以在设备上进行测试,看看真正的应用程序看起来如何。您可以对任意数量的项目执行此操作,而无需复制任何文件并占用 git 存储库中的空间。这种方法实际上允许您让您的设计师通过将不同的图像放在文件夹中来更改不同项目的可绘制对象,而无需开发人员或只需少量开发人员参与。如果你技术熟练,你甚至可以编写一些 ant 脚本来为他们​​构建和签署项目,这样他们就可以在设备上进行测试,看看真正的应用程序看起来如何。

于 2013-05-23T15:13:28.307 回答