尽管 Google Play 商店显示不同,但 APK 版本代码冲突

use*_*214 5 fastlane

我正在使用 fastlane 自动增加我的版本代码并部署我的应用程序。apkNotificationMessageKeyUpgradeVersionConflict: APK specifies a version code that has already been used. - APK specifies a version code that has already been used尽管我发布的最高版本代码是 3,但我还是收到了错误消息。

车道bump_version_code执行

[03:47:41]: ------------------------------
[03:47:41]: Driving the lane 'android alpha' 
[03:47:42]: ------------------------------------------------------
[03:47:42]: --- Step: Switch to android bump_version_code lane ---
[03:47:42]: ------------------------------------------------------
[03:47:42]: Cruising over to lane 'android bump_version_code' 
[03:47:42]: ---------------------------------------------
[03:47:42]: --- Step: google_play_track_version_codes ---
[03:47:42]: ---------------------------------------------
[03:47:43]: Found '1' version codes in track 'production'
[03:47:43]: ---------------------------------------------
[03:47:43]: --- Step: google_play_track_version_codes ---
[03:47:43]: ---------------------------------------------
[03:47:45]: Found '1' version codes in track 'beta'
[03:47:45]: ---------------------------------------------
[03:47:45]: --- Step: google_play_track_version_codes ---
[03:47:45]: ---------------------------------------------
[03:47:46]: Found '3' version codes in track 'alpha'
[03:47:46]: ------------------------------------
[03:47:46]: --- Step: increment_version_code ---
[03:47:46]: ------------------------------------
[03:47:46]: The get_version_code plugin is looking inside your project folder (./app)!
[03:47:46]: ?? Version code has been changed to 4
[03:47:46]: Cruising back to lane 'android alpha' 
Run Code Online (Sandbox Code Playgroud)

车道上下文和错误

+-------------------------------------+-------------------------------------------------------------------------------------------------------------------+
| DEFAULT_PLATFORM                    | android                                                                                                           |
| PLATFORM_NAME                       | android                                                                                                           |
| LANE_NAME                           | android alpha                                                                                                     |
| VERSION_CODE                        | 4                                                                                                                 |
| GRADLE_BUILD_TYPE                   | Release                                                                                                           |
| GRADLE_ALL_APK_OUTPUT_PATHS         | ["/Users/runner/runners/2.165.2/work/myapp/myapp/client/android/app/build/outputs/apk/release/app-release.apk"] |
| GRADLE_ALL_AAB_OUTPUT_PATHS         | []                                                                                                                |
| GRADLE_ALL_OUTPUT_JSON_OUTPUT_PATHS | ["/Users/runner/runners/2.165.2/work/myapp/myapp/client/android/app/build/outputs/apk/release/output.json"]     |
| GRADLE_ALL_MAPPING_TXT_OUTPUT_PATHS | []                                                                                                                |
| GRADLE_APK_OUTPUT_PATH              | /Users/runner/runners/2.165.2/work/myapp/myapp/client/android/app/build/outputs/apk/release/app-release.apk     |
| GRADLE_OUTPUT_JSON_OUTPUT_PATH      | /Users/runner/runners/2.165.2/work/myapp/myapp/client/android/app/build/outputs/apk/release/output.json         |
+-------------------------------------+-------------------------------------------------------------------------------------------------------------------+
[03:49:53]: Google Api Error: apkNotificationMessageKeyUpgradeVersionConflict: APK specifies a version code that has already been used. - APK specifies a version code that has already been used.

+------+------------------------------------------+-------------+
|                       fastlane summary                        |
+------+------------------------------------------+-------------+

| Step | Action                                   | Time (in s) |
[!] Google Api Error: apkNotificationMessageKeyUpgradeVersionConflict: APK specifies a version code that has already been used. - APK specifies a version code that has already been used.
+------+------------------------------------------+-------------+
| 1    | default_platform                         | 0           |
| 2    | Switch to android bump_version_code lane | 0           |
| 3    | google_play_track_version_codes          | 1           |
| 4    | google_play_track_version_codes          | 1           |
| 5    | google_play_track_version_codes          | 1           |
| 6    | increment_version_code                   | 0           |
| 7    | clean                                    | 47          |
| 8    | assembleRelease                          | 73          |
|    | upload_to_play_store                     | 5           |
+------+------------------------------------------+-------------+
Run Code Online (Sandbox Code Playgroud)

快速文件

lane :bump_version_code do
    g = google_play_track_version_codes
    gb = google_play_track_version_codes(track: 'beta')
    ga = google_play_track_version_codes(track: 'alpha')
    max_value = [g[0].to_i, gb[0].to_i, ga[0].to_i].max
    version_updated = max_value + 1
    increment_version_code(
      app_folder_name: "./app", 
      version_code: version_updated.to_i
    )
  end

  desc "Submit a new Alpha Build to Google Play"
  lane :alpha do
    bump_version_code
    gradle(task: 'clean')
    gradle(
      task: 'assemble',
      build_type: 'Release',
      properties: {
        "android.injected.signing.store.file" => ENV["ANDROID_KEYSTORE"],
        "android.injected.signing.store.password" => ENV["ANDROID_KEYSTORE_PASSWORD"],
        "android.injected.signing.key.alias" => ENV["ANDROID_KEY_ALIAS"],
        "android.injected.signing.key.password" => ENV["ANDROID_KEY_PASSWORD"],
      }
    )
    upload_to_play_store(track: 'alpha')
  end
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

档案库

在此处输入图片说明

MoO*_*oOx 15

前往Google Play 管理中心

\n
    \n
  • 侧栏中的“应用程序包资源管理器”
  • \n
  • 右上角,点击“应用程序版本:***\xe2\x96\xbe
  • \n
  • 您应该看到所有上传的包。删除具有您要使用的版本代码的版本。
  • \n
\n

说明:这发生在我玩 Fastlane 时。我上传了一堆 .aab 文件,并且 versionCode 一直在更新(我正在玩increment_version_code 插件,所以这是有道理的)。我最终手动推送了一个构建,因为我收到了一个错误(与版本代码无关)。\n几天后,我尝试继续处理该问题,并想上传我的构建“3”(版本代码:3,因为我在测试中只推送了 2 个包,其他的没有使用)...但是在我之前的几天里,我上传了三个版本 3、4 和 5,这导致了这个问题。删除它们使我能够推送版本代码为 3 的新版本。

\n

  • 救星。Google Play Console 比 Apple Connect 更令人困惑。 (2认同)

rca*_*rba 1

这是因为您在手动上传的工件库上上传了一些工件。如果你删除它,它就会起作用。您可以在发布管理内的左侧菜单中找到 Artifact Library。

在此输入图像描述

可能会上传一些草稿二进制文件,其代码版本大于活动二进制文件的代码版本。