【问题标题】:Output.json displays app version code as version nameOutput.json 将应用版本代码显示为版本名称
【发布时间】:2021-01-04 01:21:04
【问题描述】:

在运行 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 apk android-build


【解决方案1】:

这是 android gradle 插件 4.0.0 的问题。更新 gradle 插件版本

classpath 'com.android.tools.build:gradle:4.0.2' // currently 4.1.0 might also apply

可以查看当前版本here

【讨论】:

  • 已确认。前几天我将 gradle 插件和 gradle 版本一起升级并解决了。谢谢
猜你喜欢
  • 1970-01-01
  • 2021-10-22
  • 1970-01-01
  • 2016-04-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-11
相关资源
最近更新 更多