使用Ant编译Android工程(Linux系统)

原创 2012年03月27日 19:16:48

 

一、问题
同一套Android代码,希望通过配置文件的形式,制作成不同包名的多个package(多包名,多版本号,多市场logo,多广告商)。

二、解决方法
使用Ant编译

三、Ant安装和使用

1.        环境:Ubuntu 10.04

2.        安装工具

1)       安装jdk 1.6及android-sdk-linux-r15(见android sdk相关文档)

2)       安装ant 1.83版本
由于android-sdk-linux-r15需要ant 1.8.0以上版本,在ubuntu 10.04上使用apt-get自动安装的版本太低,所以使用源码包安装方法

a)        下载
ant最新版(当前为1.8.3)
下载junit-4.9.jar包,ant编译时需要此包

b)       安装
$ tar xvzf ../tgz/apache-ant-1.8.3-src.tar.gz
$ cd apache-ant-1.8.3
$ cp /usr/lib/jvm/java-6-sun/lib/junit-4.9.jar lib/optional/
$ export JAVA_HOME=/usr/lib/jvm/java-6-sun
$. build.sh
$. build.sh install

3.        建立工程

1)       列出目标平台ID
$ $ANDROID_SDK_DIR/tools/android list targets

2)       建立新的android工程(效果同使用eclipse新建android工程一致)
$ $ANDROID_SDK_DIR/tools/android create project –k 包名 –a项目名 –t 目标平台ID –p 路径

3)       编译工程
$ ant debug
此时在bin目录下生成相应的apk文件
(jar包和so库都放在libs目录下即可被打入apk包,位置同android源码编译中位置一致)

4)       在虚拟机中安装并运行
$ $ANDROID_SDK_DIR/tools/android list avd  
列出所有的AVD
$ $ANDROID_SDK_DIR/tools/emulator –avd 指定AVD名称
操作模拟器时,键盘F2对应菜单键,Home键对应设备的Home键
$ $ANDROID_SDK_DIR/platform-tools/adb install xxx.apk
在虚拟机中打开应用即可

4.        对原有工程用ant编译

1)       建立ant编译脚本build.xml
$ $ANDROID_SDK_DIR/tools/android update project --name 项目名 –t目标平台ID –p 路径

2)       编译工程

a)        编译debug版本
$ ant debug
生成带debug签名的apk

b)       生成release版本
$ ant release
生成带未签名的apk,之后手动签名即可
编辑build.properties文件,其中指定签名相关资源,可自动签名

5.        将一套代码通过简单配置自动生成多个apk包(此处只介绍最简单的方法)

1)       原理
使用 ant –f参数指定运行脚本,在该脚本中修改代码,资源,脚本的内容,然后再运行ant编译出相应的apk,原理和手动替换资源一样。

2)       方法
参见:http://bbs.chinaunix.net/thread-3637817-1-1.html


版权声明:本文为博主原创文章,未经博主允许不得转载。

关于Ant编译Android中Ant学习研究

关于Android中Ant自动编译学习研究 这里如何下载配置Ant就不在必阐述了。直接进入主题; 这里只阐述用已经创建好的工程如何添加Ant自动脚本编译; 首先进行项目目录,这里我的项目是...
  • huangbiao86
  • huangbiao86
  • 2013年10月24日 23:15
  • 3191

android使用ant编译APK

ANT是java开发的很好的构建工具,很多开源项目都是使用ANT来构建的,并且ANT和JUNIT可以很好的配合使用,生成非常完美的测试报告,帮助开发人员开发。作为一名开发人员,如果一天天的时间都花在项...
  • houyu_1983
  • houyu_1983
  • 2013年06月19日 15:06
  • 20653

通过ant脚本编译打包android工程

Android程序编译、打包、签名、发布的三种方式: 方式一:命令行手动编译打包 方式二:使用ant自动编译打包 方式三:使用eclipse+ADT编译打包 这里介绍打包的方式之一:通过ant...
  • Sky_Monkey
  • Sky_Monkey
  • 2013年09月21日 22:59
  • 10152

Ant自动编译打包android项目

背景:     Eclipse用起来虽然方便,但是编译打包android项目还是比较慢,尤其当要讲应用打包发布到各个渠道时,用Eclipse手动打包各种渠道包就有点不且实际了,这时候我们用到Ant帮我...
  • likebamboo
  • likebamboo
  • 2014年01月05日 21:07
  • 6146

使用Ant编译Android

(转载请注明出处:http://blog.sina.com.cn/u/1429359895) 使用Ant编译Android应用程序很方便,在Window和Linux下均可使用。尤其是将一个软...
  • xieyan0811
  • xieyan0811
  • 2014年09月05日 12:15
  • 4450

使用ANT打包Android应用

大家好,今天来分享一下如何使用ANT打包Android应用。 通常我们习惯用eclipse来开发Android程序,它会自动帮我们打包当前的应用程序。如果在Navigator视图下,我们可以看到以下...
  • liuhe688
  • liuhe688
  • 2011年08月15日 20:24
  • 47469

Android ANT 如何编译Jar 和 APK

最近在研究Android 的Ant 编译环境,遂将经验总结写下来。大家都知道我们可以在eclipse 里面编译android 的工程,这是怎么完成的呢?它主要是由于ADT 插件调用android的bu...
  • wangbaochu
  • wangbaochu
  • 2015年03月20日 10:48
  • 1453

ant自动打包编译android custom_rules和ant.properties文件

  • 2015年05月28日 17:31
  • 2KB
  • 下载

Ant自动编译打包&发布 android项目

Ant自动编译打包&发布 android项目   Eclipse用起来虽然方便,但是编译打包android项目还是比较慢,尤其将应用打包发布到各个渠道时,用Eclipse手动打包各种渠道包就有点...
  • u012398902
  • u012398902
  • 2016年05月10日 15:24
  • 495

Ant编译多个依赖工程jar、war包

使用jenkins进行自动化部署时,发现项目不是用maven进行管理的,无奈只能学习一下ant编译项目方式,本文主要根据自己的操作对如何编译war包、如何编译war包以及jar包间的依赖进行了一下总结...
  • SongYou05
  • SongYou05
  • 2017年12月12日 18:01
  • 103
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用Ant编译Android工程(Linux系统)
举报原因:
原因补充:

(最多只允许输入30个字)