我想要在Android Studio中點擊發布應用程序。如何通過gradle任務同步Android項目?
而且我有3項任務:增量版本,內置的應用程序和發佈應用內:
increaseVersionCode assembleRelease crashlyticsUploadDistributionRelease
任務increaseVersionCode
(我自己),只是增加的versionCode在build.gradle
,但在那之後的任務assembleRelease
運行與之前的versionCode值(不增加)。最後(畢竟3個任務),我已經增加了build.gradle
中的versionCode,併發布了應用程序,但是使用了舊的versionCode。
我想,我應該在increaseVersionCode
之後運行「Sync Project」。但我不知道如何用gradle來做。
是否有可能通過gradle任務運行Android Studio的「Sync Project」?
來源increaseVersionCode
:
import java.util.regex.Pattern
task('increaseVersionCode') << {
def buildFile = file("build.gradle")
def pattern = Pattern.compile("versionCode\\s+(\\d+)")
def manifestText = buildFile.getText()
def matcher = pattern.matcher(manifestText)
matcher.find()
def versionCode = Integer.parseInt(matcher.group(1))
def manifestContent = matcher.replaceAll("versionCode " + ++versionCode)
buildFile.write(manifestContent)
}
UPD,ANSWER
我們需要命令分成兩個的bash命令:
./gradlew increaseVersionCode && ./gradlew assembleRelease crashlyticsUploadDistributionRelease
使用Android的Studio插件BashSupport
我們可以給從工作室運行bash腳本。因此,我們需要將此命令存檔,並使用Android-Studio運行。感謝@ k3b。
如何增加版本代碼,以及如何在構建任務中使用它? –
@ lu.koerfer它只是簡單的用正則表達式替換。我附上了任務的源代碼。 – comm1x