如何获取 Flutter 应用的版本号
2018-12-07
240677
我目前正在开发一款应用,目前处于测试模式。因此,我想向他们展示他们使用的版本。例如,“v1.0b10 - iOS”。到目前为止,我得到了以下代码:
Text("Build: V1.0b10 - " + (Platform.isIOS ? "iOS" : "Android"))
。我如何在 Flutter 中获取构建版本和编号?
3个回答
您可以使用 package_info_plus 。
版本提取自:
Android:
build.gradle, versionCode and versionName
iOS:
Info.plist, CFBundleVersion
用法
添加依赖项
- 将其添加到您的包的 pubspec.yaml 文件中:
dependencies:
package_info_plus: ^1.0.6
- 将文件导入您的 dart 文件:
import 'package:package_info_plus/package_info_plus.dart';
-
如果您的方法标记为
async
:
PackageInfo packageInfo = await PackageInfo.fromPlatform();
String appName = packageInfo.appName;
String packageName = packageInfo.packageName;
String version = packageInfo.version;
String buildNumber = packageInfo.buildNumber;
如果您不想使用
await/async
:
PackageInfo.fromPlatform().then((PackageInfo packageInfo) {
String appName = packageInfo.appName;
String packageName = packageInfo.packageName;
String version = packageInfo.version;
String buildNumber = packageInfo.buildNumber;
});
diegoveloper
2018-12-07
注意 :此答案已更新,以反映 package_info 插件已被弃用并重定向到 package_info_plus 的事实。
版本名称和内部版本号
在开发时,您可以通过检查 pubspec.yaml 轻松找到 Flutter 或 Dart 项目的版本名称和内部版本号。以下是示例:
version: 1.1.0+2
此情况下,版本名称为
1.1.0
,内部版本号为
2
。
但是,如果您想在运行时获取这些值,则应使用插件。
添加依赖项
在
pubspec.yaml
中添加
package_info_plus
包。
dependencies:
package_info_plus: ^1.0.2
将版本号更新为 当前 版本。
导入包
在您需要的文件中,添加以下内容导入。
import 'package:package_info_plus/package_info_plus.dart';
获取版本名称和代码
在您的代码中,您可以像这样获取应用程序版本名称和代码:
PackageInfo packageInfo = await PackageInfo.fromPlatform();
String version = packageInfo.version;
String code = packageInfo.buildNumber;
另请参阅
Suragch
2019-01-25
安装 package_info_plus ,然后您可以在小部件树中直接将其与未来的构建器一起使用:
FutureBuilder<PackageInfo>(
future: PackageInfo.fromPlatform(),
builder: (context, snapshot) {
switch (snapshot.connectionState) {
case ConnectionState.done:
return Align(
alignment: Alignment.bottomCenter,
child: Text(
'Version: ${snapshot.data!.version}',),
);
default:
return const SizedBox();
}
},
),
Hashem Aboonajmi
2021-03-18