本身動手開發一個Android持續集成工具-3

本系列代碼地址 githubgit

相關資料 gradle in action中英文對照版github

回到目錄工具

上一邊咱們介紹task的相關內容,今天咱們接着完善咱們的打包工具。post

不失通常性的,咱們以「publishReleaseRelease」這個任務爲例,其餘三個任務的邏輯和這個任務邏輯是同樣的,只是參數不一樣。gradle

當咱們要執行apk的上傳功能以前,首先咱們須要確保apk編譯出來。那打包的task是哪個呢?咱們在gradle面板下找一下,發現,打包的任務是「assembleRelease」這個task。spa

也就是說,咱們上傳的任務是依賴「assembleRelease」這個task的。任務的依賴關係咱們能夠經過「dependsOn」這個任務來指定,以下:code

task publishReleaseRelease(dependsOn: "assembleRelease") {
    group "publish"
    doFirst {
        println "publishReleaseRelease doFirst called......"
    }
    doLast {
        println "publishReleaseRelease doLast called......"
    }
}

複製代碼

而且咱們還在任務裏面加入了兩個action,一個經過「doFirst」添加,一個經過「doLast」添加。當咱們再執行這個任務的時候,發現他先執行了"assembleRelease"這個任務,而後纔開始執行咱們的「publishReleaseRelease」這個任務,而且先執行的「doFirst」對應的action,人後執行的「doLast」的action。執行結果以下:cdn

相關文章
相關標籤/搜索