快速了解Android Studio的Gradle(2)

apply plugin: 'com.android.application' 应用Android的gradle插件到当前构建脚本,此插件其实继承自gradle的application插件,使用application插件,可以通过添加task来运行或把Java项目构建为基于命令行的程序。

Android gradle插件具有application插件的功能,同时会应用java插件和distribution插件,后两个插件用来自动化编译和发布java程序的。

android

这个Android gradle插件提供的元素,用于配置android相关的构建选项,包括:

compileSdkVersion 指定构建时使用的Android SDK版本

buildToolsVersion 指定构建工具的版本,构建工具可以使用Android SDK Manager来安装,可以安装多个版本,如图:

快速了解Android Studio的Gradle

官方建议这里指定的构建工具的版本最好大于等于目标SDK版本(targetSdkVersion)。

defaultConfig元素里的配置对应AndroidManifest.xml文件,优先级比AndroidManifest.xml文件里的配置高。gradle支持对一个项目构建多种版本,比如试用版 、商业版,每个版本可以有自己的defaultConfig。

buildTypes元素默认定义了debug和release两种构建,debug构建出来的APK将包含调试符号,并且以debug key进行签名,而release类型的默认是没有签名的。minifyEnabled为true表示启用自动清除无用代码,用于软件包瘦身。proguardFiles指定了代码混淆使用的相关文件。

工程依赖

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.2.0'
}

这里的dependencies是gradle工程定义的元素,指定此工程依赖什么。compile这个方法指定要添加什么来编译主程序,这些东西将最终被打包进APK中。

fileTree(dir: 'libs', include: ['*.jar']) 将返回一个文件树对象,这些文件位于app/libs目录,并以.jar结尾。

整句代码的意思就是把当前工程目录的libs目录下所有jar文件加入编译时classpath中,并打包进APK。这是本地二进制库依赖的写法。

而 compile 'com.android.support:appcompat-v7:22.2.0' 表示依赖位于仓库中的appcompat库及其版本,位于Android Support Library中,如果本地没有安装Android Support Library,使用Android SDK Manager进行下载。(进阶:当然,还可以指定依赖其它工程,以及除compile外的其它依赖类型,具体见 《依赖管理介绍》

至此,我们已经大概了解了AndroidStudio默认工程有关gradle的脚本。其实AndroidStudio IDE提供了很多设置,这些设置修改后,AndroidStudio会自动更新相关的build.gradle和*.properties文件。如果我们手工编辑build.gradle文件,AndroidStudio将提示我们进行sync(同步)操作,以便这些配置反映到IDE界面上。

参考链接:

更多Android Studio相关内容可以看看以下的有用链接: 

在Ubuntu 15.04下安装Android Studio   

Ubuntu 12.04(64位)安装Android Studio 全过程  

Android Studio v0.1尝鲜  

Android Studio使用教程  

Android Studio开发指南

Android Studio设置主题 和 不支持中文的问题解决方法  

Android Studio 下载安装以及不能打开的解决办法  

Android Studio安装使用图文教程  

Ubuntu上安装Android Studio 1.3(谷歌 Android IDE 开发)   

Android Studio 的详细介绍请点这里
Android Studio 的下载地址请点这里 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/1af93fc48e4eaf0efdd437318b8949de.html