本篇讲解的内容是不借助任何IDE徒手使用gradle构建一个android应用程序,让你更加了解android studio构建android应用的原理。
1. 我们要从Gradle的官网,去下载gradle,值得高兴的是,这个网站是不需要的,另外目前最新的gradle版本是2.1,下载完之后解压到你指定的文件夹中(我的在D:\Software)
2. 打开环境变量(别告诉我你找不到),新建一个系统变量:变量名GRADLE_HOME,变量值D:\Software\gradle-1.12(gradle所在目录)
3. 在系统变量PATH路径中配置,目的是在DOS命令行中任何的目录下都可以访问到gradle
经过上面的3个步骤,我们已经配置好gradle了,打开DOS命令行(快捷键window+r -->cmd)输入:gradle,看到下图所示即安装成功
task是gralde所能执行的最小单位,相当于java中一个函数,task是需要用脚本语言groovy来写的,不多说,按照惯例先来一个Hello World。
1, 在任意目录下(我的目录:D:\Software\gradle-1.12\gradletest\hellogradle)新建文件build.gradle,将下面的代码粘贴上去.
task hello {
doLast {
println ‘Hello World’
}
}
2. 进入此目录,输入:gradle hello
我们可以看到在上图中打印出了Hello World,一般在项目中,是不需要我们来写task的(是不是很兴奋?),这样又会带来一个新的问题,怎么找到Android自带的那些写好的task呢?
如果你想查看android中已经写好的task,我们只需要在build.gradle文件中定义如下代码
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath ‘com.android.tools.build:gradle:0.12.2’
}
}
apply plugin: ‘com.android.application’
然后我们就可以在改目录下查看android提供的task了,打开命令行切到指定目录,输入:gradle tasks
列出各类task供我们使用,比如构建时用到的task,我们在android studio中运行项目的时候也可以看到这些task的。
1. 创建一个gradle能够识别的android项目目录结构,可以鼠标右键新建,也可以通过如下命令去创建
mkdir src\main\java\com
echo > src\main\AndroidManifest.xml
2. 打开AndroidMainfest.xml,将一下内容复制进去
3.以上2步就完成了一个简单项目的配置,下面我们需要配置build.gradle文件
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.12.2'
}
}
apply plugin: 'com.android.application'
android {
compileSdkVersion 19
buildToolsVersion "20.0.0"
defaultConfig {
applicationId "com"
minSdkVersion 16
targetSdkVersion 19
versionCode 1
versionName "1.0"
}
}
4.在build.gradle文件所在目录输入:gradle assembleDebug 命令,就可以在build\outputs\apk目录下可以找到生成的apk文件
gradle wrapper意为gradle包装器,用于封装gradle的下载与安装代码。要使用wrapper,只需要在项目的根目录下(也就是build.gradle所在的目录)调用gradle wrapper,就能生成以下四个文件。
gradle\wrapper\gradle-wrapper.jar
gradle\wrapper\gradle-wrapper.properties
gradlew
gradlew.bat
对于电脑里没有安装gradle的用户,可以直接通过执行gradlew,来调用gradle对应的task。比如安卓打包的命令可以变成gradlew assembleDebug,其实在执行gradlew命令时,gradle-wrapper.jar会自动下载安装gradle,安装目录在gradle-wrapper.properties里配置。然后使用安装后的gradle来执行指定的task。
以上是对Android Studio构建工具gradle的简单介绍,如有不对的地方,欢迎指正。