Android Ant 和 Gradle 包装工艺和效率控制

一个、Ant 包:(下载ant、配置环境变量不说)

1、进入命令行模式,并切换到项目文件夹,运行例如以下命令为ADT创建的项目加入ant build支持:

android update project -p . -t  "android-17"

2、build脚本默认target是help,所以会显示如上信息,改动target为debug或release就能够像无ant时一样编译、生成以及调试了。

3、使用release时  在local.properties加入签名信息

#keystore

key.store=xx.p12

key.alias=xxx

key.store.password=xxx

key.alias.password=xxx

4、命令行运行build.xml:    ant
-buildfile build.xml

5、error 处理

> BUILD FAILED
> C:\Android\android-sdk\tools\ant\build.xml:601: The following error occurred while executing this line:
> C:\Android\android-sdk\tools\ant\build.xml:653: The following error occurred while executing this line:
> C:\Android\android-sdk\tools\ant\build.xml:698: null returned: 1

Also, if eclipse is set to ‘build automatically‘ then this could keep popping up because eclipse will keep regenerating into the bin folder.
just run ‘ant clean release‘ instead of ‘ant release‘ when you are building this.
rm -fR $(find . -type d -name crunch|xargs)
假设遇到上述error 就运行 ant clean release

能够參考我的项目:https://github.com/mentor811/Android-Batch-Pack

二、gradle 打包

1、下载gradle  1.10 配置环境变量

2、配置android 环境变量 ANDROID_HOME

3、导出build文件

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbWFzb25ibG9n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" >

4、改动build文件

參考:https://github.com/umeng/umeng-muti-channel-build-tool/tree/master/Gradle

5、运行

gradle clean

gradle build

三、gradle 和 ant 的比較

1、本人用起来感觉 gradle 比較苛刻

a、AndroidManifest.xml里的凝视必须<!-- 前后必需要有空格 -->

b、中文凝视可能会有乱码

c、各个library project 里的 minsdk 和targetsdk 要和主工程保持一致

d、对png 图片的格式非常严格

e、lint

而  使用Ant 时,没有遇到上述问题,直接就成功了。

2、gradle 会把library project 里Androidmanifest.xml 合并到主工程。ant不会

3、灵活性上 绝对是gradle。配置友盟多渠道、改包名 配置一下就ok,而ant非常费劲。

4、打包效率对照:

第一次运行时 之前没有build的的项目

gradle 2min   53   pk    ant  2min 54

下图是 已经运行过一个build后的打包时间:

左边gradle  右边 ant

版权声明:本文博客原创文章。博客,未经同意,不得转载。

时间: 2024-11-19 22:18:39

Android Ant 和 Gradle 包装工艺和效率控制的相关文章

Android Ant 和 Gradle 打包流程和效率对比

一.Ant 打包:(下载ant.配置环境变量就不说了) 1.进入命令行模式,并切换到项目目录,执行如下命令为ADT创建的项目添加ant build支持: android update project -p . -t  "android-17" 2.build脚本默认target是help,所以会显示如上信息,修改target为debug或release就可以像无ant时一样编译.生成以及调试了. 3.使用release时  在local.properties添加签名信息 #keysto

Android Ant 和 Gradle 打包流程和效率对照

一.Ant 打包:(下载ant.配置环境变量就不说了) 1.进入命令行模式,并切换到项目文件夹.运行例如以下命令为ADT创建的项目加入ant build支持: android update project -p . -t  "android-17" 2.build脚本默认target是help.所以会显示如上信息,改动target为debug或release就能够像无ant时一样编译.生成以及调试了. 3.使用release时  在local.properties加入签名信息 #key

提高Android Studio中Gradle执行效率

尊重劳动成果,转载请注明出处:http://blog.csdn.net/growth58 你是否感觉到Android Studio构建速度太慢?我也有这感觉. 幸运的是,这有很多可以提高构建速度的技巧.这些技巧目前还在实验并且有可能是不安全的,如果你觉得构建时间太长而且很痛苦的话,尝试一下这些技巧还是很有价值的.我已经按照下面所描述的试过在代码改动很少的情况下构建时间下降了2.5秒.希望对你有帮助. Android Studio使用Gradle来构建工程.目前Gradle的版本为2.2.最近的版

给 Android 初学者的 Gradle 知识普及

转载自:StormZhang个人网站. http://stormzhang.com/android/2016/07/02/gradle-for-android-beginners/ PPPS:对于基础使用Gradle来说,这些知识点足以让你对它有一些认识,当然在后面的构建打包,渠道打包还要一些其他的知识点,后续再收集. 1. 前言 前一段时间有人在我的邪教群里问「刚学 Android 不久,对 Gradle 不懂,看了很多资料依然一知半解,希望张哥给讲讲 Gradle 」,没想到群里很多人都响应

Android Studio中Gradle统一管理版本号引用配置

Gradle统一管理版本号引用配置 为了提高项目开发效率,在实际项目开发过程中往往会引入一些开源框架,还有项目中使用的各种module,moudle过多时最好提供一种统一的方式去管理版本号,如:compileSdkVersion.buildToolsVersion.androidTestCompile 等,便于日后对版本号进行维护,此处记录2种方式处理上述问题. 方式一 1.在项目根目录下创建.gradle文件,如:config.gradle 2.在根目录下的build.gradle文件中引入我

快速掌握 Android Studio 中 Gradle 的使用方法(转)

Gradle是可以用于Android开发的新一代的 Build System, 也是 Android Studio默认的build工具. Gradle脚本是基于一种JVM语言 -- Groovy,再加上DSL(领域特定语言)组成的. 因为Groovy是JVM语言,所以可以使用大部分的Java语言库.所谓DSL就是专门针对Android开发的插件,比如标准Gradle之外的一些新的方法(Method).闭包(Closure)等. 由于Gradle的语法足够简洁,而且可以使用大部分的java包,当之

Android Studio 离线 gradle

从eclipse换到android studio 感觉真是鸟枪换炮啊,效率大大提升,但是每次android studio升级完接着离线的gradle就出错,让人恼火啊,所以就仔细研究了下gradle的离线使用,总结了几点,记录下免得忘了 1.android studio升级后一般都会升级gradle,然后会有一个下载好的gradle文件夹在AS的安装目录下,这个目录可以直接引用 2.项目依赖的gradle版本号一般和AS版本号相同,或者可以去下边的目录查看当前支持的版本号: Android St

[原]Android打包之Gradle打包

最近尝试了一下Android的Gradle打包,发现确实比Ant打包会方便很多,特此记录下来. 注:android的gradle现在插件的版本已经是0.14.3了,对于一些老的方法和api,有一些已经被移除,无法使用(http://tools.android.com/tech-docs/new-build-system/migrating-to-1-0-0),以下这些属性改名,原先的不能用: runProguard -> minifyEnabled (是否混淆) zipAlign -> zip

Android插件的Gradle基础

1.Gradle简介 查看Gradle最新版本2.13 查看Gradle User Guide Gradle是一个基于Java(JVM)平台的构建体系(build system),它的一些特性: Gradle核心是基于Groovy的领域特定语言(Domain Specific Languages,DSL),具有良好的扩展性,所以不管是简单的独立项目还是大型的多项目构建它都能高效的提高构建任务,尤其对多项目支持是非常好:Gradle还提供了局部构建功能,譬如构建一个单独子项目时它会构建这个子项目依