我正在嘗試自動化與我合作的CI上的構建過程。我可以調用curl
併爲其分配一些變量,如版本代碼和名稱。然後CI(在我的情況下Bitrise CI)抓住它並啓動Release build。 但是,在此之前,我想根據已將curl
傳遞給build.gradle
文件的內容設置版本代碼和版本名稱,然後構建過程開始。是否可以通過Gradle任務設置Android版本代碼和名稱?
所以,我想我可以寫一個插件/任務,從命令行獲取版本代碼/名稱,然後將其注入build.gradle
文件。像./gradlew setVersion 1 1.0
這樣的命令。因此,通過從我將編寫的腳本運行此命令,我將能夠運行此gradle任務,並且glob中的任何人都可以通過curl
創建發佈版本。很有意思:)
我可以寫一個類似於以下代碼的任務,將它放到我的主build.gradle
文件中。
task setVersion << {
println versionCode
println versionName
}
,並通過它通過命令行的一些參數:
./gradlew -PversionCode=483 -PversionName=v4.0.3 setVersion
這是我的輸出:
:setVersion
483
v4.0.3
BUILD SUCCESSFUL
Total time: 6.346 secs
到目前爲止好。我的問題是如何在build.gradle
文件中設置它?感謝
正如我評論@ brwngrldev的回答,我寫了一篇關於如何自動化Android Build系統的文章。如果你有興趣,請看看這篇文章。 https://medium.com/@hesam.kamalan/how-to-automate-android-build-process-on-bitrise-ci-part-2-b3f8124c29ee#.dnia5gg6t – Hesam