android技术文档翻译--ant任务

以下内容由http://www.flysnow.org(飞雪无情)提供翻译

原文地址 http://tools.android.com/tech-docs/ant-tasks

更多翻译的Android技术文档请参考:https://github.com/rujews/android-tech-docs

Ant任务

此功能还在积极开发过程中,可以到ADT-dev中讨论

当前自定义的任务列表:

  • AaptExecTask
  • AidlExecTask
  • ApkBuilderTask
  • BuildConfigTask
  • DexExecTask
  • IfElseTask
  • PropertyByReplaceTask
  • RenderScriptTask
  • SignApkTask
  • XPathTask
  • ZipAlignTask

r20版本新增的任务:

  • CheckEnvTask
  • ComputeDependencyTask
  • ComputeProjectClasspathTask
  • GetEmmaFilterTask
  • GetLibraryListTask
  • GetTargetTask
  • GetTypeTask
  • ManifestMergerTask

被以上主要任务所使用的一些基本任务:

  • BuildTypedTask
  • MultiFilesTask
  • SingleDependencyTask
  • SingleInputOutputTask

com.android.ant.CheckEnvTask:<checkenv>

对如下的环境信息作一些简单的校验:

  • Ant的版本
  • Android SDK里的platform-tool文件夹是否存在

该任务没有属性可配置

com.android.ant.GetTypeTask <gettype>

获取项目工程的类型,其取值可能是:

  • “app”
  • “library”
  • “test”
  • “test-app”

属性名

描述

是否必须

projectTypeOut

用于存储获得的项目类型

com.android.ant.GetTargetTask <gettarget>

解析项目target,返回构建所必需依赖的target的值

属性名

描述

是否必须

androidJarFileOut

存储获得的构建工程的target android.jar位置

androidAidlFileOut

存储获得的构建工程的target framework.aidl位置

bootClassPathOut

存储获得的一个Path对象,该对象包含所有启动jar(android.jar + add-on APIs)

targetApiOut

存储获得的构建工程的target API级别

minSdkVersionOut

存储获得的应用的minSdkVersion的值

com.android.ant.GetLibraryListTask <getlibs>

统计工程所依赖的所有库工程的列表。该列表包含所有直接和间接的依赖,并且按指定的顺序排列。

属性名

描述

是否必须

libraryFolderPathOut

存储获得的一个Path对象,该对象包含所有的库工程文件夹,并且以编译顺序排序

com.android.ant.ComputeDependencyTask <dependency>

统计工程的依赖。主要是关于库工程相关的细节,当然也包括和主工程和它的库工程有关的所有jar库。 它会使用 这里 提到的依赖方案进行处理。

属性名

描述

是否必须

libraryFolderPathOut

存储获得的一个Path对象,该对象包含所有的库工程文件夹,并且以编译顺序排序

libraryPackagesOut

存储获得的所有库工程的包名,并且以逗号分割

libraryManifestFilePathOut

存储获得的一个Path对象,该对象包含所有库工程的Manifest文件

libraryResFolderPathOut

存储获得的一个Path对象,该对象包含所有库工程的资源文件夹。使用aapt的顺序排序,正好和libraryFolderPathOut的顺序相反

libraryNativeFolderPathOut

存储获得的一个Path对象,该对象包含所有的库工程本地文件夹

jarLibraryPathOut

存储获得的一个Path对象,该对象包含所有构建所需的jar库

targetApi

项目构建的target API级别

verbose

项目构建显示的明细级别

其他的任务将在以后引入补充

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏idba

浅谈 multiprocessing

一前言 使用python进行并发处理多台机器/多个实例的时候,我们可以使用threading ,但是由于著名的GIL存在,实际上threading 并...

890
来自专栏码洞

Channel最佳实践之基本规则【译】

channel[通道]是golang的一种重要特性,正是因为channel的存在才使得golang不同于其它语言。channel使得并发编程变得简单容易有趣。

711
来自专栏流柯技术学院

JMeter专题系列(五)检查点

检查点:我们对用户名和密码进行了参数化,那么怎样来判断jmeter有没有正确调用t.dat里面的文件呢。当然,我们可以从结果图表中查看。但我还是想在“登录”这个...

1043
来自专栏yukong的小专栏

【java并发编程实战1】何为线程安全性线程安全性

多线程问题,一直是我们老生常谈的一个问题,在面试中也会被经常问到,如何去学习理解多线程,何为线程安全性,那么大家跟我的脚步一起来学习一下。

1273
来自专栏程序员的碎碎念

ThinkPHP基础知识(三)

TP调试模式: 入口文件index.php中: define('APP_DEBUG',true); //默认为false,表示关闭...

4059
来自专栏java一日一条

ava多线程:volatile变量、happens-before关系及内存一致性

请参考来自 Jean-philippe Bempel 的评论。他提到了一个真实因 JVM 优化导致死锁的例子。我尽可能多地写博客的原因之一是一旦自己理解错了,可...

772
来自专栏我的博客

Nginx配置中Location语法详解

1、语法:location [=|~|~*|^~] /uri/ { … } = 为完全匹配 ~ 为区分大小写匹配 ~* 为不区分大小写匹配 !~和!~*...

3788
来自专栏Linyb极客之路

jvm内存模型

JVM定义了若干个程序执行期间使用的数据区域。这个区域里的一些数据在JVM启动的时候创建,在JVM退出的时候销毁。而其他的数据依赖于每一个线程,在线程创建时创...

3459
来自专栏猛牛哥的博客

aardio v13.6 更新

1492
来自专栏java达人

为什么volatile使用比synchronized少

在多线程编程中,我们最常用的是synchronized,而对volatile的使用,却相对较少。这一方面是因为volatile的使用场景限制,另一方面是vola...

2258

扫码关注云+社区

领取腾讯云代金券