AS 自发布1.0正式版以来已经更新到了2.21版本,功能也日趋稳定,现在已经代替了原有的eclipse成为我们广大Android开发者的新一代神器,我个人用AS的实践也有一年半的实践,期间也得到了许多朋友的帮助,学会了许多实用的知识,想记录下来分享给大家.
这次我主要介绍gradle 脚本的一些简单的实用技巧.在此之前有必要先介绍一下gradle的基础知识.正常的项目一般不止一个gradle文件,一般分为根目录的build.gradle和module 的build.gradle,
根目录的build.gradle:这个文件比较简单,一般用于配置全局的代码仓库,和依赖的Android gradle 插件的版本.
module 的build.gradle:该文件是AS自动创建的编译脚本文件.通过apply plugin :可以指定为application module和library module.
android {}作用域是用于控制在编译Android代码时候相关的参数, 在提到android {}作用域的时候,为了方便理解,可以把类似android{} 这种类型的理解成一个对象,android其实是一个方法名,{}作用域里面的一对对参数,我们可以理解为对象的属性或是成员变量. android{} 这个对象里面用来控制编译Android过程中的大部分参数,例如compileSdkVersion 编译的版本号,defaultConfig{} 用来控制默认的一些参数配置,如果这些参数没有定义那么则使用defaultConfig{} 里面的参数配置. 现在上一张我个人项目的module的个人配置,
普通application目录
rootProject的gradle配置变量
这样写的好处是便于对编译过程中的参数,版本进行统一的管理,每个module都依赖rootProject的参数,这样在进行修改的时候不需要每个module进行改变,可以灵活的配置开发依赖.
ext介绍
多余的属性一般用ext这个命名空间来代替,下面及几种介绍是定义property 并赋值.
多渠道打包控制
这个脚本的主要作用是遍历上面的渠道名称,然后分别打包给manifest文件的UMENG_CHANNEL_VALUE变量赋值.
这样我们便可以方便的进行渠道包的分发.
测试环境与开发环境的参数配置
在实际的开发过程中,我经常会需要来回切换push,im,以及统计的相关appkey,这样手动的切换十分麻烦,而且万一手动操作失误会给发版带来灾难性的后果,在经过 沪江网 徐宜生的帮助,学会配置用脚本开发与测试环境的 相关sdk appkey.
经过这样,之后我们便可以不用切换正式与测试的相关的账号,节省了开发时间.
结束语
gradle的脚本功能十分强大,本文只是简单的介绍一些日常开发使用的脚本,欢迎大家留言交流.