插件
该文件的第一行是Android应用插件,该插件我们在上一篇博客已经介绍过,其是google的Android开辟团队编写的插件,可以或许供给所有关于Android应用和依附库的构建,打包和测试。
Android
该办法包含了所有的Android属性,而独一必须得属性为compileSdkVersion和buildToolsVersion:
- compileSdkVersion:编译该app时刻,你想应用到的api版本。
- buildToolsVersion:构建对象的版本号。
构建对象包含了很多实用的敕令行敕令,例如aapt,zipalign,dx等,这些敕令可以或许被用来产生多种多样的应用法度榜样。你可以经由过程sdk manager来下载这些构建对象。
- defaultConfig {
- applicationId "com.gradleforandroid.gettingstarted"
- minSdkVersion 14
- targetSdkVersion 22
- versionCode 1
- versionName "1.0"
- }
base插件定义潦攀例如assemble和clean义务,Java插件定义了check和build义务,这两个义务不在base插件中定义。
第一个属性是applicationId,该属性复写了AndroidManifest文件中的包名package
name,然则关于applicationId和package
name在AndroidManifest.xml有两个感化:其作为一个app的独一标示,并且其被用在了R资本文件的包名。
Gradle可以或许很轻松的构建不合版本的app,应用构建变种。举个例子,其可以或许很轻松的创建一个免费版本和付费版本的app。这两个版本须要分隔的标示码,所以他们可以或许以不合的app涌如今各大年夜应用市廛,当然他们也可以或许同时安装在一个手机中。资本代码和R文件必须拥有雷同的包名,不然你的资本代码将须要改变,这就是为什么Android开辟团扼要将package name的两大年夜功能拆分开。在AndroidManifest文件中定义的package name依然被用来作为包名和R文件的包名。而applicationid将被用在设备和各大年夜应用市廛中作为独一的标示。
接下来将是minSdkVersion和targetSdkVersion。这两个和AndroidManifest中的<uses-sdk>很像。minSdkVersion定义为最小支撑api。
versionCode将会作为版本号标示,而versionName毫无感化。
所有的属性都是重写了AndroidManifest文件中的属性,所以你没须要在AndroidManifest中定义这些属性了。
buildTypes办法定义了若何构建不合版本的app,我们将鄙人一篇博客中有所介绍。
依附包
依附模块作为gradle默认的属性之一(这也是为什么其放在了Android的外面),为你的app定义了所有的依附包。默认情况下,我们依附了所有在libs文件下的jar文件,同时包含了AppCompat这个aar文件。我们将会鄙人一篇博客中评论辩论依附的问题。
让我们开端tasks吧
如不雅你有很多模块在一个工程下,你可以这么定义你的project文件。
如不雅你想知道你若干tasks可以用,直接运行gradlew tasks,其会为你展示所有可用的tasks。当你创建了一个Android工程,那么将包含Android tasks,build tasks,build setup tasks,help tasks,install tasks,verification tasks等。
根本的tasks
android插件依附于Java插件,而Java插件依附于base插件。
base插件有根本的tasks生命周期和一些通用的属性。
这些tasks的商定含义:
- assemble: 集合所有的output
- clean: 清除所有的output
- check: 履行所有的checks检查,平日是unit测试和instrumentation测试
- build: 履行所有的assemble和check
Java插件同时也添加了source sets的概念。
Android tasks
android插件持续了这些根本tasks,并且实现了他们本身的行动:
- assemble 针对每个版本创建一个apk
- clean 删除所有的构建义务,包含apk文件
- check 履行Lint检查并且可以或许在Lint检测到缺凳?停止履行脚本
- build 履行assemble和check
默认情况下assemble tasks定义了assembleDebug和assembleRelease,当然你还可以定义更多构建版本。除了这些tasks,android 插件也供给了一些新的tasks:
- connectedCheck 在测试机上履行所有测试义务
- deviceCheck 履行所有的测试在长途设备上
- installDebug和installRelease 在设备上安装一个特别的版本
- 所有的install task对应有uninstall 义务
推荐阅读
使用Rsync命令同步两个Samba4 AD DC之间的SysVol目录
这篇文┞仿讲的是在两个 Samba4 晃荡目次域控制器之间,经由过程一些强大年夜的 Linux 对象来完成 SysVol 的复制操作,比如 Rsync 数据同步对象,Cron 义务调剂过程和 SS>>>详细阅读
本文标题:Gradle for Android第二篇( Build.gradle入门 )
地址:http://www.17bianji.com/lsqh/34690.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示