我已经在Play商店中颤抖地发布了一个应用程序,现在我要上传该应用程序的新版本。我正在尝试使用以下方式更改版本代码:
flutter build apk --build-name = 1.0.2 --build-number = 3
或像这样更改local.properties
setNum
但是每次我在Playstore上遇到错误
您必须为APK或Android应用程序捆绑包使用其他版本代码,因为代码1已分配给另一个APK或Android应用程序捆绑包。
答案 0 :(得分:12)
想出了这一点。 文档不直接
在您的pubspec.yaml中更改版本
version: 1.0.2+2
其中+后面的内容是我认为的versionName
答案 1 :(得分:6)
该应用程序的默认版本号是1.0.0。要对其进行更新,请导航至pubspec.yaml
文件并更新以下行:
version: 1.0.0+1
只需将该版本更改为(根据您的需要)
version: 1.0.1+2
版本号是由点号隔开的三个数字,例如上例中的1.0.0,后跟可选的内部版本号,例如上例中的1,并用+隔开。
在Flutter的版本中,可以分别指定--build-name和--build-number来覆盖版本和内部版本号。
在Android中,内部版本号用作versionName,而内部版本号用作versionCode。有关更多信息,请参见Version your app
在pubspec file
中更新版本号后,从项目顶部运行flutter pub
get,或使用IDE中的Pub get按钮。这样会更新versionName
文件中的versionCode
和local.properties
,随后在重建Flutter应用程序时会在build.gradle
文件中对其进行更新。
答案 2 :(得分:6)
更新应用的版本号 该应用程序的默认版本号是1.0.0。要对其进行更新,请导航到pubspec.yaml文件并更新以下行:
版本:1.0.0 + 1
版本号是由点号隔开的三个数字,例如上例中的1.0.0,后跟可选的内部版本号,例如上例中的1,并用+隔开。
在Flutter的版本中,可以分别指定--build-name和--build-number来覆盖版本和内部版本号。
在Android中,内部版本号用作versionName,而内部版本号用作versionCode。有关更多信息,请参阅Android文档中的“对应用程序进行版本控制”。
答案 3 :(得分:3)
对于Android
“ X.Y.Z + n”,此处“ x.y.z”代表版本名称,而“ n”代表版本号。 进行以下更改-
pubspec.yaml
中更改您的版本号。local.properties
命令来更新您的flutter pub get
。flutter build apk
或flutter build appbundle
命令来构建apk或应用捆绑包。答案 4 :(得分:3)
答案 5 :(得分:2)
解决方案:
在pubspec.yaml内部添加此内容(可能在描述后,与描述相同的缩进,名称等...):
version: 2.0.0+2
然后将软件包放入flutter本地目录中(请不要忘记这样做)
说明:
加号之前的所有内容都是版本名称,之后是版本代码。所以这里的版本代码是2,名称是2.0.0。每当您对flutter应用程序进行更新时,请确保强制更改版本代码!
其他信息:
每当构建android应用时,android / app /中的build.gradle都会查找版本代码和名称。这通常位于local.properties中,每次更改flutter pubspec.yaml都会更改该属性。
答案 6 :(得分:1)
文档说,构建参数应该覆盖pubspec.yml
:
Flutter的版本和内部版本号可能都被覆盖 通过分别指定--build-name和--build-number进行构建。
https://flutter.dev/docs/deployment/android#updating-the-apps-version-number
答案 7 :(得分:1)
更新 com.Vaadin=FINER
中的 version:A.B.C+X
。
对于Android:
pubspec.yaml
代表A.B.C
,例如versionName
。
1.0.0
(X
之后的数字)表示+
,例如versionCode
,1
,2
等。>
在更新3
文件中的flutter packages get
后运行version
时,pubspec
中的versionName
和versionCode
被更新后来在您使用local.properties
或build.gradle (app)
构建flutter项目时在flutter build
中得到了帮助,这最终负责地为apk设置了flutter run
和versionName
。
对于iOS:
versionCode
代表A.B.C
,例如CFBundleShortVersionString
。
1.0.0
(X
之后的数字)表示+
,例如CFBundleVersion
,1
,2
等。>
答案 8 :(得分:1)
检查
android{
//....
defaultConfig {
//....
version code:2
}
}
在android> app> Build.gradle从项目的根文件夹中
答案 9 :(得分:1)
我遇到了同样的问题,我通过重新启动Android Studio来解决了这个问题。
答案 10 :(得分:1)
您仍然可以通过覆盖android / app / build.gradle完全完成自己的事情:
使用您自己的值。
答案 11 :(得分:1)
我认为没有人真正回答过这个问题。许多建议正在更新 pubspec 中的版本。但根据您的部署,您可能不会使用这些值。
flutter build --build-number=X --build-name=Y
X 被用作您的版本代码 Y 用作您的版本名称
要测试只需运行构建并检查 local.properties
答案 12 :(得分:0)
将版本代码,名称更改为:
代码:20100
名称:2.1.0
答案 13 :(得分:0)
pubspec.yaml中的第一个变化扑扑版本 示例`1.0.3 + 4版本
如果是android,请转到local.properties,然后更改版本名称和代码,例如flutter版本代码和名称。
如果是Ios,请比生成的FLUTTER_BUILD_NAME = 1.0.3转到generate.xcconfig FLUTTER_BUILD_NUMBER = 4`
答案 14 :(得分:0)
version: 1.0.0+1
version: 1.0.0+2
flutter build ios --release-name --release-number
将更新ios中的版本flutter pub get && flutter run
将更新android(android / local.properties)的版本答案 15 :(得分:0)
任何解决方案对 App Bundle
都不起作用,我改为 APK
并且版本没有问题。
不清楚为什么。
答案 16 :(得分:0)
这对我有用! 我将第一个应用程序识别为默认版本名称 1.0.0 版本号 1 所以这意味着 1.0.0+1
我在 pubspec.yaml 中写入 1.0.0+2 后更新了我的应用。
答案 17 :(得分:0)
答案 18 :(得分:0)
所有这些答案都反映了官方文档,这就是我设置 versionName
和 versionCode
的方式。但是当我上传我的构建时,我得到了与帖子作者报告的相同的错误。
我以前在 Play 商店中的版本代码显示为 4 (0.0.2)
...我已经习惯了 iOS 的工作方式,所以这对我来说看起来很奇怪。括号中的数字应该是build/code
数字,主数字是实际的version
数字。必要时增加内部版本号,而不必增加 version
(因为没有重大变化)。
因此,当我尝试上传带有新版本号的 0.0.3+1
以针对此新版本递增时,它抱怨 1
已被使用。
那么这在 Play 商店中是如何运作的呢?我也很迷茫。