Android应用开发高效工具集1---ant构建简单Android项目
本文转载于:http://blog.csdn.net/lincyang/article/details/40950153
在java编译那些事儿中提到了用ant去编译Java项目,今天扩展到用它来构建Android项目,其实道理是相通的,变化的只是使用的形式。ant构建相比IDE的好处是多个子项目使用自定义jar包时,ant可以更好的完成自动化构建,一个命令就搞定整个项目的编译而不用手工的导出jar包然后再将其放到指定目录。这就是高效的构建工具所标榜的。
先来说说ant在Linux下的安装(那篇文章写的太过简单,其实也是很简单的,别看mannul中写的那么复杂)。
1.ant的安装
最简单的办法就是直接用Linux系统命令安装:
Ubuntu:
sudo apt-get install ant
Fedora:
sudo yum install ant
缺点是软件服务器上的版本太过老旧。我在Fedora 14(这系统版本就够老的了)安装版本是1.7.1,而最新版本是1.9.4,所以还是推荐直接从官网下载最新的版本安装。如果想看源码就选择Source
Edition,而我选择了Binary Edition,就像是免安装版软件一下,步骤如下:
1)下载。zip或其他格式安装包,解压到你想放置的路径:
- [linc@localhost ant]$ cp ~/Downloads/apache-ant-1.9.4-bin.zip .
- [linc@localhost ant]$ unzip apache-ant-1.9.4-bin.zip
- [linc@localhost ant]$ cd apache-ant-1.9.4
- [linc@localhost apache-ant-1.9.4]$ ls
- bin fetch.xml INSTALL lib manual README
- etc get-m2.xml KEYS LICENSE NOTICE WHATSNEW
2)设置环境变量
在.bashrc中添加如下内容:
- 15 export ANT_HOME=/home/linc/dev/ant/apache-ant-1.9.4
- 16 export JAVA_HOME=/usr/java/jdk1.6.0_25
- 17 export PATH=${PATH}:${ANT_HOME}/bin
为了让修改立即生效,执行一下 source ~/.bashrc
3)检查是否成功
执行ant,如打印下面的信息,说明ant起作用了。
- [linc@localhost apache-ant-1.9.4]$ ant
- Buildfile: build.xml does not exist!
- Build failed
2.build.xml
ant的编译是基于build.xml配置文件的,而Android SDK已经为我们提供了一个模板,详见<sdk>/tools/ant/build.xml
,更为美妙的是我们可以用android工具来生成build.xml。
android工具是<sdk>/tools下的工具,从名称可以看出它的能力是很强的。这个工具以后会单独找个机会说,先来简单介绍一下它是如何帮忙创建build.xml文件的,我们首先看一下帮助:
- [linc@localhost BallGame]$ android -h update project
- Usage:
- android [global options] update project [action options]
- Global options:
- -h --help : Help on a specific command.
- -v --verbose : Verbose mode, shows errors, warnings and all messages.
- --clear-cache: Clear the SDK Manager repository manifest cache.
- -s --silent : Silent mode, shows errors only.
- Action "update project":
- Updates an Android project (must already have an AndroidManifest.xml).
- Options:
- -l --library : Directory of an Android library to add, relative to this
- project's directory.
- -p --path : The project's directory. [required]
- -n --name : Project name.
- -t --target : Target ID to set for the project.
- -s --subprojects: Also updates any projects in sub-folders, such as test
- projects.
除了参数-p路径是必须的,其他参数都可以不带。但是建议名称-n要加上,否则会默认以Activity名称来命名。-t可以不做修改,项目的Target Id其实就是指Android API的版本,我们可以查看项目的project.properties,以此为基准,如下:
- [linc@localhost BallGame]$ tail project.properties
- ...
- # Project target.
- target=android-4
进入原有项目BallGame目录,输入命令如下:
- [linc@localhost BallGame]$ android update project -p .
- Updated local.properties
- No project name specified, using Activity name 'MainActivity'.
- If you wish to change it, edit the first line of build.xml.
- Added file ./build.xml
- Added file ./proguard-project.txt
也可以指定更全的参数:
- [linc@localhost BallGame]$ android update project -p . -n BallGame -t android-4
- Updated project.properties
- Updated local.properties
- Updated file ./build.xml
- Updated file ./proguard-project.txt
至此,build.xml在我们不动一枪的情况下搞定了。
3.编译
执行ant debug,一个debug的apk就编译出来了。
本文以一个最简单的Android项目为例,讲述ant的安装和使用。下一篇讲讲复杂项目的ant构建。
Android应用开发高效工具集1---ant构建简单Android项目的更多相关文章
- Ant—使用Ant构建简单Java项目(三)
博客<Ant-使用Ant构建简单Java项目(二)>我们简化了运行Test类中main方法须要运行的命令,本博客来介绍一下如何使build.xml文件和当中使用property标签定义的属 ...
- Android Studio开发-高效插件强烈推荐
Android Studio开发-高效插件强烈推荐 现在Android的开发者基本上都使用Android Studio进行开发(如果你还在使用eclipse那也行,毕竟你乐意怎么样都行).使用好And ...
- Android SDK:Android standard develop kits 安卓开发的工具集
目前主流的安卓开发工具: 1.Adnroid-Adt-bundle SDK Manager.exe: Tools(安卓的开发小工具) 各种安卓版本 Extras 额外的开发包 在线更新/安装的安卓版本 ...
- android开发文档工具集(持续更新中...)
http://www.androiddevtools.cn/ android 产品->交互->视觉->开发->测试各种工具地址下载, 各种文档下载应有尽有,强烈推荐. ht ...
- 迁移ADT/ANT构建的Android项目至Gradle,a walk through。
LibModule 配置更新 9 months ago app 配置更新 9 months ago gradle/wrapper 配置更新 9 months ago screenshots ...
- Android UI开发第三十三篇——Navigation Drawer For Android API 7
Creating a Navigation Drawer中使用的Navigation Drawer的android:minSdkVersion="14",现在Android API ...
- Ant构建和部署项目(转)
原文地址: http://www.blogjava.net/amigoxie/archive/2007/11/09/159413.html Ant是一个Apache基金会下的跨平台的构件工具,它可以实 ...
- 使用Ant构建简单项目
Apache Ant主要用于Java项目的构建.为什么要使用Ant: 1)项目构建不是简单的编译,各种资源需要合理构建,例如有的类需要压缩成jar文件,有的文件需要放在指定位置,有时候需要使用配置文件 ...
- [枫叶学院] Unity3d高级开发教程 工具集(一) 哈希列表——强大的自己定义数据集
在日常开发中.数据集合是我们不可缺少的重要工具之中的一个.在C#中,.Net Framework也为我们提供了种类繁多,功能多样的数据集工具.在此,我基于List<T> 和 HashTab ...
随机推荐
- 后台获取不规则排列RadioButton组的值
获取多个RadioButton的值,我们一般会使用服务器控件RadioButtonList: <asp:RadioButtonList ID="rbl" runat=&quo ...
- A380上11万一张的机票什么享受?来看看
上个月底,全球奢华航班排行榜出炉,新加坡航空头等舱荣登第一.不过,比头等舱更豪奢的,将近两万美元一张往返票的“套间”又是怎么样的呢? 新加坡航空的一名常旅客Derek Low就体验了一把全球最豪奢的坐 ...
- c#图像处理入门(-bitmap类和图像像素值获取方法) 转
一.Bitmap类 Bitmap对象封装了GDI+中的一个位图,此位图由图形图像及其属性的像素数据组成.因此Bitmap是用于处理由像素数据定义的图像的对象.该类的主要方法和属性如下: 1. GetP ...
- 关于netbeans中的JComboBox(复选框)
以最近写的选课系统中添加课程项为例 1.往复选框中放入选项(根据数据库添加) (1)首先将 属性—>model中默认Item1234清空 (2)获得数据库中的数据并放入. SelectCour ...
- 二、XML约束
XML约束有dtd约束和Schema约束两种 dtd约束:可以在xml内部写dtd约束也可以在xml中引用外部dtd文件 book.dtd<!ELEMENT 书架 (书+)> < ...
- BZOJ 2083 Intelligence test
用vector,二分. #include<iostream> #include<cstdio> #include<cstring> #include<algo ...
- PHP中的数组(二)常用数组处理函数
数组的相关处理函数 一.数组键/值操作有关的函数 1.array_values() 无论是关联的还是索引的返回的都是索引数组 <?php $lamp=array(&quo ...
- iOS数据持久化
在iOS中,实现数据持久化一般分为4大种: 1.属性列表 2.对象归档 3.SQLite 4.Core Data 一.属性列表 NSUserDefaults类的使用和NSKeyedArchiver有很 ...
- 破解 crackme(“不可逆“函数)
系统 : Windows xp 程序 : crackme 程序下载地址 :http://pan.baidu.com/s/1i41oh9r 要求 : 注册机编写 使用工具 : IDA Pro & ...
- C语言字符串声明
重新学习C语言字符串声明char *a="nihao";char a[]="nihao";什么区别?前者定义的是指针,并且指向字符串常量“nihao”,后者是字 ...