在 Flutter 项目开发中,版本号管理是一个重要但常常被忽视的环节。合理的版本号管理不仅有助于跟踪应用的开发进度,还能为用户提供清晰的更新信息。本文将介绍几种在 Flutter 项目中优雅升级版本号的方法。
理解 Flutter 的版本号格式
Flutter 项目中的版本号通常遵循语义化版本控制(Semantic Versioning)规范,格式为 X.Y.Z+B
,其中:
- X 表示主版本号
- Y 表示次版本号
- Z 表示修订号
- B 表示构建号
例如,版本号 1.2.3+4
表示主版本号为 1,次版本号为 2,修订号为 3,构建号为 4。
在 pubspec.yaml 文件中设置版本号
Flutter 项目的版本号主要在 pubspec.yaml
文件中进行设置。打开项目根目录下的 pubspec.yaml
文件,找到 version
字段,按照如下格式设置版本号:
version: 1.2.3+4
这里的 1.2.3
对应 X.Y.Z
,而 4
对应构建号 B
。
- 加号前面 1.2.3 表示版本名字,相当于 Android 中的 versionName
- 加号后面 4 表示版本号,相当于 Android 中的 versionCode
Android
将版本号写入到 android 工程下的 local.properties 配置文件中,打包的 Gradle 脚本 会自动读取这个配置文件中的版本作为应用的版本号。
flutter.versionName=1.2.3
flutter.versionCode=4
iOS
在编译 iOS 的时候,Flutter 会自动将版本信息写入 ios/Flutter/Generated.xcconfig
配置文件中。
FLUTTER_BUILD_NAME=0.0.3
FLUTTER_BUILD_NUMBER=7
这个值最终会被 info.plist
使用
<key>CFBundleShortVersionString</key>
<string>$(FLUTTER_BUILD_NAME)</string>
<key>CFBundleVersion</key>
<string>$(FLUTTER_BUILD_NUMBER)</string>
- CFBundleShortVersionString(版本号):通常显示给用户,如 1.2.3。
- CFBundleVersion(构建号):用于 App Store 识别新版本,每次提交新版本时都需要增加。