0

我们希望基于相同的源代码构建多个应用程序。基础源代码将存储在 SVN 中,因此在日常开发中我们只需要修改一个代码库。

而对于不同的客户,我们希望给予一定程度的品牌化。主要是更改图像和标题,这些可以通过更改资源来完成。

经过一番研究,我们发现做这些多版本应用真的很触动。主要问题是R.java是根据包名生成的。包名称标识应用程序。源代码中有很多文件都导入这个package.name.R,这意味着对于不同的应用程序,会有不同的包名,并且大多数源代码文件中需要更改不同R的引用。

我们在网上找到了一些关于使用 Ant 执行此任务的文章,但没有一篇是真正指定的。我们希望有人可以提供帮助!

通常工作流程是这样的:

  1. 在 AndroidManifest.xml 中更改包名称
  2. 查看所有源代码文件,查找引用 R 的任何内容并将其替换为新的包名称。
  3. 将 res 文件夹切换到新客户端的 res 文件夹(我们将准备好此文件夹)
  4. 自动生成 R.java 文件。
  5. 开始正常的编译和构建过程。
  6. 获取 Apk。

我们希望有人能指出我们如何通过使用 Ant 或任何其他更好的解决方案来完成这些任务。

谢谢!

4

1 回答 1

1

我认为您应该使用通用代码创建一个 Android 库项目(http://developer.android.com/tools/projects/index.html#LibraryProjects),将其签入 VCS,然后为您创建的每个客户创建单独的项目还应该检查 VCS 以跟踪它们。您将能够从相同的源代码生成不同的定制版本。

于 2013-02-05T21:15:06.563 回答