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


当前回答

在pubspec。Yml版本:1.0.0+1 版本变更:1.0.0+2 Flutter build ios——release-name——release-number将更新ios中的版本 Flutter pub get && Flutter run将更新android版本(android/local.properties)

其他回答

Docs说build args应该覆盖pubspec.yml:

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

https://flutter.dev/docs/deployment/android#updating-the-apps-version-number

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

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

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

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

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

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

检查

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

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

为安卓

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

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