如何将应用第二次上传到 Play 商店?您已经有一个版本代码为 1 的错误

Posted

技术标签:

【中文标题】如何将应用第二次上传到 Play 商店?您已经有一个版本代码为 1 的错误【英文标题】:How to upload an app to the Play Store for the second time? you already have one with version code 1 error 【发布时间】:2020-12-17 22:30:59 【问题描述】:

我在分支内部测试中成功地将我的 apk 上传到 play 商店,但突然间,它开始拒绝我的新 apk 并出现以下错误:

You need to use a different version code for your APK or android App Bundle because you already have one with version code 1.

这是我的app.json,expo 用于生成清单:


    "android": 
      "package": "com.myapp.www",
      "versionCode": 360010305,
      "permissions": [
        "CAMERA_ROLL",
        "CAMERA",
        "LOCATION",
        "NOTIFICATIONS",
        "WRITE_EXTERNAL_STORAGE",
        "READ_EXTERNAL_STORAGE"
      ]
    

我使用this,因为我安装了semantic-release-expo,它负责在每个新版本时为我更新app.json

既然the default 已经是code,我想知道为什么我仍然收到这个错误,也许我应该将此设置更改为递增并将versionCode 设置为1?

为什么不再允许我将构建的 apk(在 expo 的 CI 上)发布到 PlayStore?

【问题讨论】:

【参考方案1】:

这是版本代码的问题。 Play 商店会在您的代码中检测到以前或相同版本的代码。因此,只需将您的版本代码替换为 360010306。之后可能会解决您的问题。

【讨论】:

我使用this,因为我已经安装了semantic-release-expo,它负责在每个新版本中为我更新app.json 既然the default 已经是code,我想知道为什么我仍然会出现这个错误,也许我应该将此设置更改为递增并将versionCode 设置为11? (示例)如果您在 Play 商店中提供最后一个版本 100,则之后您不再使用 1-100。所以也许你使用了这些版本中的任何一个。因此,如果您当时使用了 101 个版本代码,则可以并在 google play store 中进行更新。 我从未在 Play Store 上向公众发布过,我只在内部测试中部署过一次,我是唯一的测试员,也是唯一的版本,我可以在仪表板中看到它 由于某种原因,它被标记为版本 1,而 repo 使用更长的版本并且语义发布不会更新文件,你知道吗?【参考方案2】:

更新项目中的版本代码,如果它是 1 increase 到 2,依此类推 然后生成新的APK并再次上传到控制台

【讨论】:

我不应该处理版本控制,因为我安装了 semantic-release 我不明白为什么 expo-semantic-release 不会像 ios 或 web 版本那样自动更新 versionCode。跨度> 我以为你在使用 android studio【参考方案3】:

expo SDK36 确实出现了问题,从package.json 中删除sdkVersion 并导致expo-semantic-release 无法更新android 应用程序的versionNumber

已通过在我的 expo 配置中添加 app.json 来解决此问题:


  "expo": 
+    "sdkVersion": "38.0.0"
  

【讨论】:

【参考方案4】:

将您的 Build.gradle 更新为:

...
android 
    compileSdkVersion 29
    buildToolsVersion "29.0.3"
    defaultConfig 
        applicationId "com.example.yourpackage"
        minSdkVersion 21
        targetSdkVersion 29
        multiDexEnabled true
        versionCode 360010306
        versionName "0.8.8-Alpha"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    
...

对于要在控制台上上传的每个 .aab 或 .apk 文件,VersionCode 必须不同,并且此数字限制为 2100000000... 值。

特别是在您的情况下,您需要将您的版本代码增加到下一个自然数...但是,您必须小心使用随机数来版本,该模式是每一个提升一个。

【讨论】:

以上是关于如何将应用第二次上传到 Play 商店?您已经有一个版本代码为 1 的错误的主要内容,如果未能解决你的问题,请参考以下文章

将Android应用程序(在Delphi FireMonkey中开发)部署到Google Play商店

修改google play商店列表[关闭]

谷歌Play商店上传安卓App新权限政策

如何修复 Google Api 错误:禁止:将应用程序上传到 Play 商店时,Android App Bundle 使用错误的密钥签名

如何在Play商店上传拆分应用程序二进制文件

尝试将 Android 应用程序上传到 Play 商店时出现问题