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


当前回答

例如,如果你要制作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' 

其他回答

解决方案:

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

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

例如,如果你要制作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' 

我认为没有人真正回答过这个问题。在pubspec中有很多更新版本的建议。但是根据您的部署,您可能不会使用这些值。

颤振构建——构建-number=X——构建-name=Y

X被用作版本代码 使用Y作为版本名

要测试,只需运行build并检查local.properties