在Eclipse中构建Android APK的多个(测试/产品)版本

Art*_*kii 23 eclipse settings android build

我希望优化生成相同Android应用程序的略有不同的APK,唯一的区别是它正在使用的http API服务器(dev/staging/prod).

理想情况下,我只想让我的Eclipse构建2个APK,一个使用prod服务器,另一个使用dev.

我有2个运行配置即可,但我无法弄清楚如何将参数传递给应用程序并从代码中读取它们.

我想针对1.5,BTW,我想使用Eclipse自动构建工具,所以我正在寻找最通用的解决方案.

谢谢.

kin*_*ori 9

我认为使用ant build脚本将是最简单的解决方案.Eclipse支持ant build,因此您可以在eclipse中运行ant命令.

你可以像这样解决你的问题.

  1. 准备两个xml android资源文件.
  2. 用资源#1构建一个包
  3. 用资源#2的内容覆盖资源#1
  4. 建立另一个包

xml会是这样的:

资源#1:

<resources>
    <string name="target">dev</string>
</resources>
Run Code Online (Sandbox Code Playgroud)

资源#2:

<resources>
    <string name="target">staging</string>
</resources>
Run Code Online (Sandbox Code Playgroud)

和ant脚本会是这样的:

<project>
  <target name="build_all">
     <copy file="res1.xml" to="res/values/target.xml"/>
     <ant antfile="build.xml" target="debug"/>
     <copy file="res2.xml" to="res/values/target.xml"/>
     <ant antfile="build.xml" target="debug"/>
  </target>
</project>
Run Code Online (Sandbox Code Playgroud)


Jac*_*ble 0

为了传递参数,您始终可以在 android 的目录系统中创建一个文件,并让您的代码从中读取它。