Flutter 连接状态connectivity_plus
配置依赖
#检测网络状态
connectivity_plus: ^2.2.1
导入包
import 'package:connectivity_plus/connectivity_plus.dart';
定义变量
var subscription;
String? _stateText;//用来显示状态
初始化
@override
void initState() {
super.initState();
subscription = Connectivity()
.onConnectivityChanged
.listen((ConnectivityResult result) {
if (result == ConnectivityResult.wifi) {
setState(() {
_stateText = "当前处于wifi网络";
});
} else if (result == ConnectivityResult.mobile) {
setState(() {
_stateText = "当前处于数据流量网络";
});
} else if (result == ConnectivityResult.none) {
setState(() {
_stateText = "当前无网络连接";
});
} else {
setState(() {
_stateText = "处于其他连接";
});
}
});
}
销毁
@override
void dispose() {
super.dispose();
subscription.cancel();
}
显示状态组件
Center(
child: Text(_stateText!),
),