使用不同的源代码创建多个APK

时间:2014-05-27 19:48:47

标签: java android maven jenkins

我使用Jenkins构建我的Android项目,目前只输出一个APK文件。

我希望能够输出两个APK文件,例如两个不同的名称(例如android-app-A.apkandroid-app-B.apk)。

此外,我的源代码中需要一个值才能在AB APK之间进行更改。特别是,它是一个String变量。

例如,对于android-app-AString值应为 foo 。对于android-app-B,它应该是 bar 。因此,如果应用只显示了String值,那么当用户运行android-app-A.apk时,它会显示 foo {{ 1}}

如果有帮助,我也会使用Maven来管理我的Android项目依赖项。

有没有办法让这种情况发生?

我已查看Maven Profiles并浏览Maintaining Multiple APKs上的一些Android开发者页面,但我不确定最佳方法是什么,是否这是甚至可能。

2 个答案:

答案 0 :(得分:1)

Maven可能不是实现这一目标的最佳构建工具。我强烈建议您使用gradle,因为它包含内置功能:productFlavor可让您完全按照自己的需要进行操作。

答案 1 :(得分:0)

多个APK名称: MainActivity的名称用于APK的名称。它在 AndroidManifest.xml 中以android:label标记表示,通常引用 String.xml 中的app_name String项目的文件夹。在导出第二张APK之前,只需更改此String即可。

对于你的第二种方法: 如果只有一个,为什么不更改String值呢? 在有更多不同的情况下,使用多个String Manifest并注释掉另一个。如何使用多个String.xml已经回答here