从一个Android-Source-Tree构建两个APK

时间:2010-10-17 16:43:40

标签: java android ant

我有一个Android应用程序,可以下载并解析来自互联网资源的一些数据。这里没什么特别的。但是,我需要两个差异源的应用程序,轻微不同的源代码。目前,AndroidManifest中只有两个应用程序和两个略有不同的Activites,它们覆盖了一个包含所有类似内容的大抽象类。这没有任何问题,我得到两个应用程序,就像我预期的那样。

现在,我想构建两个APK以将它们上传到市场,每个应该包含一个应用程序,并且每个应用程序必须是单独安装的(甚至两个同时)。我想到的唯一解决方案是创建两个新项目(带有两个新的AndroidManifest)并将原始源文件夹符号链接到两个新项目。 然而,这也会导致问题,因为禁止安装两个具有相同包的应用程序(就java-package'de.dbruhn.app'而言)。 See this thread on the Mailinglist

是否有可行的解决方案?

谢谢!

1 个答案:

答案 0 :(得分:4)

这正是“library”机制的用途。将原始项目放入库项目,然后有两个不同的项目引用库项目。每个人都有自己的Manifest文件,并且可以声明自己的包名(将在android市场上识别它)以及声明的活动和过滤器集。

请注意,两个新项目都不需要包含任何源代码。他们可以简单地引用库项目中的活动(如果需要,使用绝对路径名来处理包差异)。