flutter获取网络连接状态
通过使用插件connectivity可以获取到当前设备是否联网,以及当前的网络类型是WIFI还是移动
然后将最新版本添加到 Flutter 项目配置文件中
获取网络类型
//获取网络类型 String _netType; void isConnectedType() async { //获取网络连接类型 var connectivityResult = await (Connectivity().checkConnectivity()); if (connectivityResult == ConnectivityResult.mobile) { // 网络类型为移动网络 _netType = "4G"; } else if (connectivityResult == ConnectivityResult.wifi) { // 网络类型为WIFI _netType = "WIFI"; }else{ _netType = "未联接"; } setState(() {}); }
获取是否联网
//判断是否联网 Future<bool> isConnected() async { var connectivityResult = await (Connectivity().checkConnectivity()); return connectivityResult != ConnectivityResult.none; }
当联网状态有变化时,还能监听是否断开网络
//添加网络切换监听 connectLiserner() async { //获取Stream Stream<ConnectivityResult> resultStream = Connectivity().onConnectivityChanged; //添加监听 resultStream.listen((event) { // }); }