在内部构建我的 Android 应用程序时 DevOps Pipeline , 我想访问预定义的 Azure DevOps variables从我的 gradle 脚本中,它看起来像这样:
apply plugin: 'com.android.application'
// When running on the CI, this will return the build-number. Otherwise use 1
def buildNumber = System.getenv("Build.BuildNumber") as Integer ?: 1
android {
compileSdkVersion 29
buildToolsVersion "29.0.2"
defaultConfig {
applicationId "my.app.id"
minSdkVersion 23
targetSdkVersion 29
versionCode buildNumber
versionName "1.0." + buildNumber
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
...
}
关于 Bitrise ,调用 def buildNumber = System.getenv("BITRISE_BUILD_NUMBER") as Integer ?: 1
工作正常,但我不知道如何访问 Build.BuildNumber Azure DevOps 管道中的变量。
最佳答案
好的,我想出了如何访问变量。诀窍是用下划线替换点,用大写字母替换小写字母。
所以
def buildNumber = System.getenv("Build.BuildNumber") as Integer ?: 1
成为
def buildNumber = System.getenv("BUILD_BUILDNUMBER") as Integer ?: 1
鉴于 Build.BuildNumber 看起来像 20191129.16,这是一个无效的版本代码,我切换到
def buildNumber = System.getenv("BUILD_BUILDID") as Integer ?: 1
关于android - 从 Android Gradle 访问 Azure DevOps 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59106914/