Gradle知識(shí)總結(jié)

一.項(xiàng)目和任務(wù)

每個(gè)build.gradle文件都代表著一個(gè)項(xiàng)目。一個(gè)項(xiàng)目里有一個(gè)或多個(gè)任務(wù)。一個(gè)任務(wù)里有一系列動(dòng)作對(duì)象。

二.構(gòu)建生命周期

初始化:創(chuàng)建項(xiàng)目實(shí)例,如果有多個(gè)build.gradle文件,就創(chuàng)建多個(gè)項(xiàng)目實(shí)例。
配置: 執(zhí)行構(gòu)建腳本,為每個(gè)項(xiàng)目實(shí)例創(chuàng)建和配置任務(wù)
執(zhí)行:執(zhí)行task

三.settings文件

settings文件在初始化階段被執(zhí)行,并且定義了哪些模塊應(yīng)該包含在構(gòu)建內(nèi)。
在這背后,Gradle會(huì)為settings文件創(chuàng)建一個(gè)setting對(duì)象,并調(diào)用相關(guān)方法。

四.android代碼塊屬性

compileSdkVersion 用來編譯應(yīng)用的Android API版本
buildToolsVersion 構(gòu)建工具和編譯器使用的版本

五.Android任務(wù)

assemble:為每個(gè)構(gòu)建版本創(chuàng)建一個(gè)APK.
clean:刪除所有的構(gòu)建內(nèi)容
check:運(yùn)行Lint檢查,如果Lint發(fā)現(xiàn)問題,則終止構(gòu)建
build:同時(shí)運(yùn)行assemble和check

六.構(gòu)建變體

構(gòu)建變體是構(gòu)建類型和product flavor結(jié)合的結(jié)果。android gradle 插件會(huì)為每一個(gè)構(gòu)建變體創(chuàng)建任務(wù)。

七.創(chuàng)建任務(wù)

task('hello')<<{
    println 'hello,world'
}


tasks.create(name:'hello')<<{
    println 'hello,world'
}

task的兩種依賴關(guān)系mustrunafter和depends on的區(qū)別。
mustrunafter只是指定task的依賴關(guān)系,你仍然可以獨(dú)立執(zhí)行task。
而depends on則是依賴關(guān)系。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,901評(píng)論 25 709
  • 說明 本文主要介紹和Gradle關(guān)系密切、相對(duì)不容易理解的配置,偏重概念介紹。部分內(nèi)容是Android特有的(例如...
    搬磚的小明閱讀 16,155評(píng)論 1 62
  • 周一,下雨,累成狗~ 以上是我對(duì)今天的總結(jié)~ 這個(gè)周末過得很開心,而且超級(jí)幸福!一年沒有回蘇州了,這次回去吃了所有...
    Eileen卟啉卟啉閱讀 247評(píng)論 0 0
  • 數(shù)學(xué)老師駕著―輛塞滿了集合函數(shù)三角導(dǎo)數(shù)向量復(fù)數(shù)數(shù)列不等式直線與圓圓錐曲線立體幾何統(tǒng)計(jì)概率推理證明算法的馬車飛馳而去...
    佳莉說閱讀 317評(píng)論 0 0
  • 這周贈(zèng)書活動(dòng)繼續(xù),具體大家看文末哦~ 老舍先生說:“人,即使活到八九十歲,有母親便可以多少還有點(diǎn)孩子氣。失了慈母便...
    蘇菲趣育兒閱讀 550評(píng)論 0 1

友情鏈接更多精彩內(nèi)容