java编译那些事通过提到ant编译Java工程,如今扩大到用它来构建Android目,事实上道理是相通的。变化的仅仅是使用的形式。ant构建相比IDE的优点是多个子项目使用自己定义jar包时,ant能够更好的完毕自己主动化构建。一个命令就搞定整个项目的编译而不用手工的导出jar包然后再将其放到指定文件夹。

这就是高效的构建工具所标榜的。

先来说说ant在Linux下的安装(那篇文章写的太过简单,事实上也是非常easy的,别看mannul中写的那么复杂)。

1.ant的安装

最简单的办法就是直接用Linux系统命令安装:
Ubuntu:
sudo apt-get install ant
Fedora:
sudo yum install ant
缺点是软件server上的版本号太过老旧。我在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工程的更多相关文章

  1. 微信小程序开发工具使用与设计规范(二)

    [未经作者本人同意,请勿以任何形式转载] 上一篇文章主要分析了微信小程序应用场景和优劣势.本篇你可以学习到: 如何使用小程序开发工具写一个Hello World 微信小程序设计规范 微信小程序项目结构 ...

  2. Open Source 开发工具集

    Open Source 开发工具集 转自:http://www.linuxforum.net原作者:gogoliu(Pooh-Bah) 编辑器: vi:老牌编辑器,在各个unix和unix-like平 ...

  3. 界面开发工具集Telerik UI for ASP.NET AJAX发布R2 2019

    Telerik UI for ASP.NET AJAX拥有构建ASP.NET AJAX和SharePoint应用程序的80+控件,将为任何浏览器和设备构建Web Forms应用程序的时间缩短一半.Te ...

  4. 微信小程序开发工具测评

    1月9日微信小程序正式上线.很多企业都希望能在这个.但是在技术开发的问题上,却不知道该如何下手.经过一些程序员不辞辛苦连夜测试,终于从十余款工具呕心沥血筛选出四款比较靠谱实用的微信小程序开发工具.接下 ...

  5. 微信小程序开发工具的数据,配置,日志等目录在哪儿? 怎么找?

    原文地址:http://www.wxapp-union.com/portal.php?mod=view&aid=359 本文由本站halfyawn原创:感谢原创者:如有疑问,请在评论内回复   ...

  6. mac版微信web开发者工具(小程序开发工具)无法显示二维码 解决方案

    微信小程序概念的提出,绝对可以算得上中国IT界惊天动地的一件大事,这可能意味着一场新的开发热潮即将到来, 我也怀着激动的心情准备全身心投入其中,不过截止目前,在官方网站上下载的最新版本都无法使用,打开 ...

  7. 微信小程序开发工具中快捷键

    微信小程序开发工具表面上是没有更多的样式类的工具,例如缩进.隐藏代码什么的. 现在总结一下小程序开发工具常用的一些快捷键: 格式调整 Ctrl+S:保存文件Ctrl+[, Ctrl+]:代码行缩进Ct ...

  8. ubuntu系统安装微信小程序开发工具

    在ubuntu系统中安装微信小程序开发工具之前,先要安装wine与git 一.安装wine 1.如果您的系统是64位,启用32位架构(如果您还没有) sudo dpkg --add-architect ...

  9. 解决Mac版微信小程序开发工具打开后无法显示二维码

    问题描述: 正常情况下,打开微信小程序开发工具后,首页提示扫描二维码进行登陆,但是如果不显示二维码,当然无法登陆. 解决方案: 无法显示二维码肯定是程序运行哪里出错了,我们直接点击桌面图标是无法排查错 ...

随机推荐

  1. tomcatserver乱码问题,tomcat与数据库之间的编码统一转换

    在tomcat文件夹的conf文件夹下,改动server.xml文件,在以下截图中的位置加上URIEncoding="UTF-8"则表示tomcat编码转换为utf-8风格, 一般 ...

  2. android CheckBox RadioButton 照片和文字的间距问题

    利用自身的定义CheckBox 要么RadioButton时间.定义自己的图标和文字在不同的手机显示不同的音高.有时不太好控制,下面是我自己的定义CheckBox: 在Layout在下面xml: &l ...

  3. SQLServer-----使用jTDS连接SQLServer数据库

    一.jTDS一个简短的引论 jTDS100%纯Java实现的JDBC3.0驱动,它用于连接 Microsoft SQL Server(6.5.7.2000,2005,2008 和 2012)和Syba ...

  4. 关于接收POST请求 $GLOBALS['HTTP_RAW_POST_DATA']

    总是产生变量包含有原始的 POST 数据.否则,此变量仅在碰到未识别 MIME 类型的数据时产生.不过,访问原始 POST 数据的更好方法是 php://input.$HTTP_RAW_POST_DA ...

  5. VARCHAR2 他们占几个字节? NLS_LENGTH_SEMANTICS,nls_language

    ORACLE初始化参数:NLS_LENGTH_SEMANTICS 初始化參数NLS_LENGTH_SEMANTICS用于指定CHAR列或VARCHAR2列的长度定义方式,默认值为BYTE. 当设置该參 ...

  6. EXCEL Pivot table manipulate

    Add filter For the Demo time,I would like to filter out the products which not in Red and Black colo ...

  7. AngularJS html5Mode 使用 SVG Marker失效

    接上一篇文章: 问题: 解决了html5Mode的路由问题之后,今天突然发现一个奇怪的问题:项目中使用SVG所画的箭头全都不见了?反复测试之后发现Chrome和Firefox有问题,而IE却可以显示, ...

  8. EF调用sp,EF自动生成返回类型

    在sp中添加下面的红色部分,就是执行sp时的返回类型,后面在EF中添加该sp后,EF会在DBContext文件中,自动生成调用该sp的代码,包括返回类型等,如下: public virtual Obj ...

  9. Codeforces Round #266 (Div. 2)-C,D

    C - Number of Ways 直接暴力从前往后寻找.假设找到1/3sum的位置,那么标记++.找到2/3的位置,总数加上标记数. #include<stdio.h> #includ ...

  10. 完全背包 (DP)

    输入: n=3 (w,v)={(3,4),(4,5),(2,3)} W=7 输出: 10(0号物品选1个,2号物品选2个) 和01背包的区别是物品可以任意选择. 令dp[i+1][j]=从前i种物品中 ...