我已经用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并选择已经发送的版本。

其他回答

更新应用程序的版本号 应用程序默认版本号为1.0.0。要更新它,请导航到pubspec。Yaml文件并更新如下行:

版本:1.0.0 + 1

版本号是三个用圆点分隔的数字,比如上面的例子中的1.0.0,后面跟着一个可选的版本号,比如上面的例子中的1,用+分隔。

在Flutter的构建中,可以通过分别指定——build-name和——build-number来覆盖版本和构建号。

在Android中,build-name用作versionName, build-number用作versionCode。有关更多信息,请参阅Android文档中的应用程序版本。

更新版本:pubspec.yaml中的A.B.C+X。

为Android:

a.b.c.表示versionName,例如1.0.0。

X(+后面的数字)表示versionCode,如1、2、3等。

在此步骤之后,不要忘记执行flutter build apk或flutter run,因为:当您在pubspec文件中更新此版本后运行flutter build apk或flutter run时,本地的versionName和versionCode将被删除。属性稍后在构建中被更新。当您使用flutter build apk或flutter run构建您的flutter项目时,gradle (app)最终负责为apk设置versionName和versionCode。

iOS:

a.b.c.表示CFBundleShortVersionString,例如1.0.0。

X(+后面的数字)表示CFBundleVersion,例如1、2、3等。

不要忘记在此步骤后执行颤振构建ipa或颤振运行

例如,如果你要制作android 3版本,

对于Android,请访问 pubspec。Yaml和编辑在这里

version: 3.0.0

然后去建造。Gradle和编辑在这里

def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
    flutterVersionCode = '3'
}

def flutterVersionName = localProperties.getProperty('flutter.versionName')
if (flutterVersionName == null) {
    flutterVersionName = '3.0' 

在我的情况下,我解决了相同的问题通过更改两个文件:

1-在pubspec.yaml:

来自:

version: 1.0.0+1

to:

version: 1.0.0+2

2-在android/locale.properties中

来自:

flutter.versionName=1.0.0
flutter.versionCode=1

to:

flutter.versionName=1.0.0
flutter.versionCode=2

3-Last行动:

flutter clean
flutter packages get

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

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

version: 1.0.2+2

这里的东西是VER_NAME+VER_CODE