我很擅长Java和Eclipse来自iOS / xCode背景。我有一个iOS项目有2个版本,1个使用测试服务器,1个使用实时服务器。在xCode中,这只是添加新构建目标(预处理器宏)的情况,而不是在代码中使用#ifdef为每个构建使用单独的url。 把它移植到Android上,每次我想在两个版本之间构建/测试时,我都有这个列表需要做的事情
TO SWITCH BETWEEN LIVE AND TEST
Rename Application Package com.mybus.myapp/com.mybus.myapptestserver (Right click, Android Tools, Rename Application Package).
Rename com.mybus.myapp folder to com.mybus.myapptestserver.
Change Map API key in manifest
Change SENDER_ID in BeginActivity.java (Notification app ID).
Search and change all references com.mybus.myapp/com.mybus.myapptestserver (Including SharedPreferences).
Change URL's in ConnectionHelper.java and PasswordResetConnection.java
Change icon and label in Manifest for Application & BeginActivity.
Remove crash reporter (ACRA) from MyApplication.java.
Change .setSmallIcon(R.drawable.ic_test_launcher) & .setContentTitle("myapptestserver") in GCMIntentService.java
当然,有一种更简单的方法可以构建单独的构建并同时在设备上同时使用它们吗?
答案 0 :(得分:0)
您可以使用Ant脚本执行此操作。一旦您自定义Ant脚本以处理所有这些更改,您就可以通过运行ant release命令获得最终输出。
您可以从哪里开始的一个小例子。我写了一篇关于它的帖子。这个ant脚本不会更改文件中的任何值,但它的作用是输出最终的apk,并使用所选的名称格式,并将其放在指定的文件夹中。
http://techdroid.kbeanie.com/2011/09/automating-builds-on-android-part-1.html
http://techdroid.kbeanie.com/2011/09/automating-builds-on-android-part-2.html
免责声明:这些是指向我博文的链接。