【发布时间】:2017-05-18 19:33:25
【问题描述】:
我有一个通过 CI 服务器部署到 Google Play alpha 轨道的 Android。对于 Android versionCode,我使用通过环境变量注入 Gradle 脚本的 CI 内部版本号。
这曾经很好用;但目前 Google Play 不接受任何构建。当我为 Gradle 手动触发 alpha 上传构建(使用 gradle-play-publisher 插件)时,我最终会遇到以下错误:
APK has an invalid version code.
因此,当查看(使用aapt dump badging apk-path)生成的 APK 时,我看到版本代码 (versionCode='') 的值为空。
构建脚本中的相关代码:
def appVersionCode = System.getenv("BUILD_NUMBER") as Integer ?: 0
defaultConfig {
...
versionCode appVersionCode
...
}
似乎没有正确读取变量;但是它正确读取 System.getenv("KEY_PASS") 以用于签名。
变量也设置好了:
❯ echo $BUILD_NUMBER
1234
有谁知道为什么这个特定的变量似乎没有被读取(不再)?
Gradle 版本:3.5,带有 Android Gradle 插件 2.3.1。
【问题讨论】:
标签: android gradle automation