Output.json 将应用版本代码显示为版本名称
Output.json displays app version code as version name
当 运行 assembleProdRelease
生成 APK 和输出文件时,我遇到了一些无法解释的奇怪现象(我的应用具有 prod
风格和 release
构建类型)。
output.json
文件实际上显示版本代码作为版本名称,见下文
{
"version": 1,
"artifactType": {
"type": "APK",
"kind": "Directory"
},
"applicationId": "com.example.myapp",
"variantName": "prodDebug",
"elements": [
{
"type": "SINGLE",
"filters": [],
"properties": [],
"versionCode": 2,
"versionName": "2",
"enabled": true,
"outputFile": "app-prod-debug.apk"
}
]
}
我的构建 gradle(在 Kotlin kts 中)非常标准:
defaultConfig {
applicationId = "com.example.myapp"
minSdkVersion(24)
targetSdkVersion(29)
versionName = "1.0.0"
versionCode = 2
}
我希望 "versionName": "1.0.0"
而不是 output.json
文件中显示的“2”。
我的 CI 设置依赖于输出文件内容从那里获取应用程序版本,所以这基本上导致我生成了错误的文件名。
我想知道是否有人遇到过类似的问题,您是如何解决的?
谢谢
这是 android gradle 插件 4.0.0 的问题。更新 gradle 插件版本
classpath 'com.android.tools.build:gradle:4.0.2' // currently 4.1.0 might also apply
可以查看当前版本here
当 运行 assembleProdRelease
生成 APK 和输出文件时,我遇到了一些无法解释的奇怪现象(我的应用具有 prod
风格和 release
构建类型)。
output.json
文件实际上显示版本代码作为版本名称,见下文
{
"version": 1,
"artifactType": {
"type": "APK",
"kind": "Directory"
},
"applicationId": "com.example.myapp",
"variantName": "prodDebug",
"elements": [
{
"type": "SINGLE",
"filters": [],
"properties": [],
"versionCode": 2,
"versionName": "2",
"enabled": true,
"outputFile": "app-prod-debug.apk"
}
]
}
我的构建 gradle(在 Kotlin kts 中)非常标准:
defaultConfig {
applicationId = "com.example.myapp"
minSdkVersion(24)
targetSdkVersion(29)
versionName = "1.0.0"
versionCode = 2
}
我希望 "versionName": "1.0.0"
而不是 output.json
文件中显示的“2”。
我的 CI 设置依赖于输出文件内容从那里获取应用程序版本,所以这基本上导致我生成了错误的文件名。
我想知道是否有人遇到过类似的问题,您是如何解决的?
谢谢
这是 android gradle 插件 4.0.0 的问题。更新 gradle 插件版本
classpath 'com.android.tools.build:gradle:4.0.2' // currently 4.1.0 might also apply
可以查看当前版本here