Flutter判断是否联网并获取当前网络类型

通过使用插件connectivity可以获取到当前设备是否联网,以及当前的网络类型是WIFI还是移动网络。

添加依赖

要使用这个插件,首先在工程的pubspec.yaml文件中加入对这个插件的依赖:

dependencies:
  connectivity: ^0.4.2

下载插件

flutter packages get

判断是否联网

import 'package:connectivity/connectivity.dart';

Future<bool> isConnected() async {
  var connectivityResult = await (Connectivity().checkConnectivity());
  return connectivityResult != ConnectivityResult.none;
}

获取网络类型

import 'package:connectivity/connectivity.dart';

var connectivityResult = await (Connectivity().checkConnectivity());
if (connectivityResult == ConnectivityResult.mobile) {
  // 网络类型为移动网络
} else if (connectivityResult == ConnectivityResult.wifi) {
  // 网络类型为WIFI
}

总结

通过这个插件可以获取到当前网络是WIFI或者移动网络,但不能获取到具体的移动网络类型,如2G/3G/4G/4G+等。

    原文作者:Android全栈
    原文地址: https://www.jianshu.com/p/d612e15a8b77
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞