【发布时间】:2014-06-14 14:15:28
【问题描述】:
问题是如何从一个源代码树构建多个具有不同包名的 APK,以便并行安装。每个安装可能是与生产版本一起的内部测试版,或者可能是具有不同选项的同一应用程序的不同版本,或者可能用于 A-B 测试目的。为构建选择不同的源代码选项很容易,但输出不同的包名称并不容易。
包名在 AndroidManifest.xml 中指定,然后出现在 R.java 中并作为 XML 中的命名空间。根据一些搜索,它也可能是动态加载资源,意图命名等的一个因素。要找到所有需要重命名的地方并不容易。
似乎 AAPT 命令有一个 --rename-manifest-package` 开关可以完成这项工作。 SO上有各种较旧的问题,但这是最近的选择。这个link 展示了如何用Ant 来做这件事,但是我们使用Eclipse 和make,所以帮助不大。而this 最近的问题仅限于 Ant。
所以问题是:(a) 这是一个可行的解决方案 (b) 是否可以通过 Eclipse 构建来完成 (c) 它会遗漏什么,需要在运行的应用程序中意识到这一点?
【问题讨论】: