android studio gradle 学习,学习Android Studio里的Gradle
一直聽說Gradle很強大,只是偶爾用Android Studio創(chuàng)建Demo的時候看到他一次,今天抽個時間完整記錄一下。
1.gradle位置
Android Studio項目創(chuàng)建好之后,默認(rèn)有3個gradle文件,分別位于:
/settings.gradle
/build.gradle
/app/build.gradle
2.gradle內(nèi)容
settings.gradle 默認(rèn)只有一行代碼,即:
include ':app'
新創(chuàng)建的項目只有app一個子項目。如果在project里添加了子項目(Module),按理需要在settings.gradle里添加相應(yīng)子項目名稱,如:
include ':app', ':androidlibrary'
提示:當(dāng)你添加一個Module后,最新版的Android Studio會自動在settings.gradle里配置好,Amazing。
根目錄的build.gradle 就比較豐富了,默認(rèn)有三個“節(jié)點”,buildscript、allprojects和task clean。
buildscript?{
repositories?{
jcenter()
}
dependencies?{
classpath?'com.android.tools.build:gradle:1.3.0'
}
}
allprojects?{
repositories?{
jcenter()
}
}
task?clean(type:?Delete)?{
delete?rootProject.buildDir
}
buildscript下的第一個子“節(jié)點”是聲明倉庫源,默認(rèn)是jcenter,之前版本則是mavenCentral,也可以兩個center共存。jcenter可以理解成是一個新的中央遠程倉庫,兼容maven中心倉庫,而且性能更優(yōu)。第二個子“節(jié)點”是聲明Android gradle plugin的版本,Android Studio 1.5版默認(rèn)是gradle 1.3。
allprojects下是聲明了所有project默認(rèn)的倉庫源。
task clean聲明了一個任務(wù),任務(wù)名叫clean(也可以改為其它),任務(wù)類型是Delete(也可以是Copy),就是每當(dāng)修改settings.gradle文件后點擊同步,就會刪除rootProject.buildDir下的文件(實際上我看到的效果是清除了External Libraries里的包,然后又添加了一次)。
app/build.gradle 就是默認(rèn)android子項目的gradle文件了,也是三個小節(jié)點:apply、android和dependencies。
apply?plugin:?'com.android.application'
android?{
compileSdkVersion?15
buildToolsVersion?'19.1.0'
defaultConfig?{
applicationId?"com.nait.picassodemo"
minSdkVersion?4
targetSdkVersion?15
versionCode?1
versionName?"1.0"
}
buildTypes?{
release?{
minifyEnabled?false
proguardFiles?getDefaultProguardFile('proguard-android.txt'),?'proguard-rules.pro'
}
}
productFlavors?{
}
}
dependencies?{
compile?fileTree(dir:?'libs',?include:?['*.jar'])
compile?'com.squareup.picasso:picasso:2.5.2'
compile?'com.squareup.okhttp:okhttp:2.5.0'
compile?'com.umeng.analytics:analytics:5.6.1'
testCompile?'junit:junit:4.12'
}
appley節(jié)點:apply plugin: 'com.android.application'
以上語句中的apply是一個方法,給它傳遞了一個參數(shù)plugin,plugin 的值是'com.android.application'。如果有多個參數(shù),則以逗號隔開,例如:compile name: 'volley', ext: 'aar'。
android節(jié)點:前面部分很好理解,從字面意思就能了解。buildTypes默認(rèn)是release(也可以添加debug),minifyEnabled表示是否需要混淆,proguardFiles 表示混淆配置文件的名稱。productFlavors表示多渠道包(以后深入學(xué)習(xí)后再寫)。
dependencies節(jié)點:com.開頭的部分是Demo項目中添加的引用包,規(guī)則是namesapce:package name:version,其它兩行是項目創(chuàng)建后默認(rèn)添加的。
當(dāng)然,開發(fā)完APP也是需要進行全方位的檢測:www.ineice.com
總結(jié)
以上是生活随笔為你收集整理的android studio gradle 学习,学习Android Studio里的Gradle的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 地下城与勇士如何开启困难模式主线任务
- 下一篇: android studio smssd