我已经用flutter在play store发布了一个应用,现在我想上传一个新版本的应用。我正在尝试更改版本代码:

Flutter build apk——build-name=1.0.2——build-number=3

或者改变局部。像这样的属性

 flutter.versionName=2.0.0
 flutter.versionCode=2
 flutter.buildMode=release

但每次我在游戏商店出错

您必须为您的APK或Android应用程序包使用不同的版本代码,因为代码1已经分配给另一个APK或Android应用程序包。


当前回答

如果您已经更改了versionCode,这可能是因为Play Console已经接受了您的构建。

而不是点击上传,点击Choose from library并选择已经发送的版本。

其他回答

我有同样的问题,我解决它重新启动Android Studio。

所有这些答案都反映了官方文档,这就是我设置versionName和versionCode的方式。但是当我上传我的构建时,我得到了与文章作者报告的相同的错误。

我之前的版本代码在play store显示为4(0.0.2)…我习惯了iOS的运作方式,所以这在我看来很奇怪。括号中的数字应该是版本/代码号,主号是实际的版本号。在必要的时候增加构建号,而不必碰撞版本(因为没有重大的变化)。

因此,当我试图上传0.0.3+1和新的构建号以增加这个新版本时,它抱怨说1已经被使用了。

那么这在Play商店中是如何运作的呢?我也很困惑。

我算出来了。 文档并不是直接的

在你的pubspec里。Yaml这样修改版本

version: 1.0.2+2

这里的东西是VER_NAME+VER_CODE

检查

android{
//....
  defaultConfig {
  //....
  version code:2
  }
}

在android上> >应用程序构建。Gradle从你的项目根文件夹

解决方案:

pubspec内部。Yaml添加这个(可能在描述之后,与描述,名称等相同的缩进…):

版本:2.0.0 + 2

然后包是否进入flutter本地目录(不要忘记这样做)

解释:

前面加的是版本名,后面加的是版本代码。所以这里的版本代码是2,名称是2.0.0。无论何时你给一个更新颤振应用程序,一定要改变版本代码强制!

额外信息:添加

每当android应用程序被构建,构建。Gradle在android/app/中查找版本代码和名称。这通常是局部的。每次更改flutter pubspec.yaml时都会更改的属性