Flutter获取应用信息(版本号,包名)以及升级应用

Flutter获取应用版本号

  1. 安装依赖(pubspec.yaml文件)
    package_info: ^0.4.0+2

  2. 导入
    import ‘package:package_info/package_info.dart’;

  3. 在你的pubspec.yaml文件头部
    在这里插入图片描述
    注意这段话,不翻译了。。。

# 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.

然后注意的是像android的包名,以及ios的配置信息需要单独去对应的文件夹下(android ,ios)处理,比如android就是build.gradle

获取

直接获取
PackageInfo packageInfo = await PackageInfo.fromPlatform();

String appName = packageInfo.appName;
String packageName = packageInfo.packageName;
String version = packageInfo.version;
String buildNumber = packageInfo.buildNumber;

异步获取
PackageInfo.fromPlatform().then((PackageInfo packageInfo) {
  String appName = packageInfo.appName;
  String packageName = packageInfo.packageName;
  String version = packageInfo.version;
  String buildNumber = packageInfo.buildNumber;
});

然后 PackageInfo里面可以获取这么多信息

 /// The app name. `CFBundleDisplayName` on iOS, `application/label` on Android.
  final String appName;

  /// The package name. `bundleIdentifier` on iOS, `getPackageName` on Android.
  final String packageName;

  /// The package version. `CFBundleShortVersionString` on iOS, `versionName` on Android.
  final String version;

  /// The build number. `CFBundleVersion` on iOS, `versionCode` on Android.
  final String buildNumber;

Flutter更新应用
做过移动开发的小伙伴应该知道 移动端升级主要是本地安装包版本,本地运行版本,线上版本三者进行比对,Android: 下载新版本包,ios:跳转AppStore链接,这里就不多说了。

我们现在使用flutter更新版本

下载apk:
引入
dependencies:
flutter_downloader: 1.1.3

taskId = await FlutterDownloader.enqueue(
url: url,//服务端提供apk文件下载路径
savedDir: (await getExternalStorageDirectory()).path.toString(),//本地存放路径
fileName: “xiangta_” + netCode + “.apk”,//存放文件名
showNotification: false,//是否显示在通知栏
openFileFromNotification: false,//是否在通知栏可以点击打开此文件
);

//taskId为任务id (与完成下载的文件成一一对应)open是执行打开 打开需要任务id 相信你已经找到方向了

FlutterDownloader.registerCallback((taskId, status, progress) {
if (status == DownloadTaskStatus.complete) {
//下载完成
FlutterDownloader.open(taskId:taskId));
} else if (status == DownloadTaskStatus.failed) {
//下载出错
}
});
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Flutter是一个跨平台的应用程序开发框架,可以用于创建Android、iOS和Web应用程序。由于Flutter是跨平台的,因此可以使用它来创建Windows应用程序。 要获取带宽,可以使用Dart中的网络库来获取网络连接的信息。可以使用ping命令测试网络连接的速度,并使用Socket库来获取网络连接的状态。 以下是一个简单示例,演示如何在Windows上使用Flutter获取带宽: 1. 创建一个新的Flutter项目 在命令行中运行以下命令,创建一个新的Flutter项目: ``` flutter create bandwidth_test ``` 2. 添加网络库 在pubspec.yaml文件中添加网络库: ``` dependencies: http: ^0.13.3 ``` 3. 获取网络连接速度 使用http库发送ping请求,然后计算响应时间来获取网络连接速度: ``` import 'package:http/http.dart' as http; import 'dart:math'; Future<double> getBandwidth() async { var url = "www.google.com"; var response = await http.get(Uri.parse("http://$url")); var latency = response.elapsedMilliseconds; var size = response.contentLength; var speed = size / latency; return speed; } ``` 4. 获取网络连接状态 使用Socket库来测试网络连接状态: ``` import 'dart:io'; Future<bool> isConnected() async { try { final result = await InternetAddress.lookup('google.com'); return result.isNotEmpty && result[0].rawAddress.isNotEmpty; } on SocketException catch (_) { return false; } } ``` 5. 在Windows上运行应用程序 使用Flutter的Windows支持,在命令行中运行以下命令来构建和运行应用程序: ``` flutter run -d windows ``` 这将启动一个Windows应用程序,它将显示当前的网络连接速度和状态。 总结: 使用Flutter开发Windows应用程序可以很容易地获取网络连接的速度和状态。Flutter的跨平台特性使其成为一个非常有用的开发框架,可以用于创建各种类型的应用程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值