Flutter获取及设置应用的版本号

Flutter获取应用版本号

借助于Flutter官方团队推出的 pakcager_info 来获取

1
2
3
4
5
6
7
8
import 'package:package_info/package_info.dart';

PackageInfo packageInfo = await PackageInfo.fromPlatform();

String appName = packageInfo.appName;
String packageName = packageInfo.packageName;
String version = packageInfo.version;
String buildNumber = packageInfo.buildNumber;
  • PackageInfo 的定义:

    1
    2
    3
    4
    5
    6
    7
    //就这四个参数
    PackageInfo({
    this.appName,
    this.packageName,
    this.version,
    this.buildNumber,
    });
  • 实际PackageInfo的数据样子

通过PackageInfo插件获取到的信息

Flutter设置应用版本号

在 yml 文件中配置 version 字段,它的构成是 版本名+数字版本号

1
2
3
4
5
6
7
8
9
10
11
# The following defines the version and build number for your application.
# A version number is three numbers separated by dots, like 1.2.43
# followed by an optional build number separated by a +.
# Both the version and the builder number may be overridden in flutter
# build by specifying --build-name and --build-number, respectively.
# In Android, build-name is used as versionName while build-number used as versionCode.
# Read more about Android versioning at https://developer.android.com/studio/publish/versioning
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 1.0.1+2 # 就是这一行

1.0.1 是通常展示给用户的版本号

2 是我们通常用来升级时对比版本大小使用的版本号

它的原理大约是将版本号写入到 android 工程下的 local.properties 配置文件中,打包的 Gradle脚本 会自动读取这个配置文件中的版本作为应用的版本号。

Flutter将版本信息写入Android工程的local.properties

Gradle打包时读取Flutter写入Properties中的版本号信息

文章作者: 普通程序员
文章链接: https://programmerauthor.github.io/2020/01/15/flutter-version/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 普通程序员