如何使用Ant构建具有相同代码库但具有不同资源文件的多个Android APK?

时间:2013-01-11 21:19:51

标签: android ant build

我正在尝试构建一个品牌的Android应用程序,它将为不同的客户提供不同的资源文件(主要是drawable)。应用程序中的Java代码将是相同的,但不同的应用程序将具有不同的外观 - 意味着不同的配色方案和不同的徽标等。我被告知,我的研究表明Ant是实现这一目标的最佳方式。

我应该在哪里更改Android'build.xml'文件?我应该用什么样的Ant任务来实现这个目标?

对于调试,我想使用Eclipse并使用默认资源进行构建。但是对于生产版本,我想在build.xml上运行Ant以从不同的/ res文件夹生成多个APK。我甚至不需要任何代码片段(虽然这样会很好),甚至是之前已经完成此操作的人或类似的提示。

3 个答案:

答案 0 :(得分:1)

我最终编写了一个Python脚本,以便在每次构建之前重新组织Android项目。我建议避免使用Ant这样的东西。除了默认的Android build.xml Ant脚本之外,我的100-200行Python实现了相当于大约1000多个额外的Ant行。

答案 1 :(得分:0)

我遇到了一个类似的问题,我希望通过一些更改以及资源文件中的更改来编译相同的代码库。我目前正在寻求的解决方案是创建一个包含共享代码/资源的库,并分离" regular"每个APK版本的项目。不幸的是,我还没有解决问题的功能性最终解决方案,所以我能给出的只是这些模糊的提示。

答案 2 :(得分:0)

需求设置

1。转到网址:

http://ant.apache.org/bindownload.cgi

并下载apache ant并将其解压缩到任何文件夹,如d:/ ant。

2. 我认为您已经拥有Android SDK路径就像(D:/ Android SDK /)

现在转到环境变量并检查路径变量是否在路径中添加这些变量,否则创建一个带有名称路径的新变量并将其放在vaue中

D:/ ant / bin; D:/ Android SDK / tools

完成

转到命令提示符并将其导航到项目的根目录并运行命令

android update project -p /

注意:/如果你在项目的根目录中,你需要提供根目录的路径,如d:/ myworkspace / mysampleproject

这将生成项目中的build.xml文件。

现在为此运行命令,必须在项目的根目录中

ant debug

这将在使用默认调试密钥签名的bin文件夹中生成apk文件。