我已经用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应用程序包。


当前回答

Play Store只单独地查看versionCode,这可能对登陆这里的其他人有帮助。所以,如果你已经更新了你的versionNumber,例如,1.0.0+1到1.1.0+1 Play Store将抛出一个错误,versionCode没有改变。因此,不管你的versionNumber是什么,你也必须改变你的versionCode——比如,从1.0.0+1变成1.1.0+2

其他回答

解决方案:

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

版本:2.0.0 + 2

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

解释:

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

额外信息:添加

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

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

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

这对我很管用! 我认出第一个应用程序为默认版本名1.0.0版本号1 这意味着1.0.0+1

我在pubspec.yaml中编写为1.0.0+2后更新了我的应用程序。

更新版本: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或颤振运行

为安卓

“X.Y.Z+n”这里“X.Y.Z”代表版本名称,“n”代表版本号。 将作出以下更改-

在pubspec。Yaml更改您的版本号。 更新本地文件。通过运行flutter pub get命令获取。 现在通过运行flutter build apk或flutter build appbundle命令构建apk或应用程序包。