connectivity_plus_ohos 是 connectivity_plus[1] 在 OpenHarmony 平台的实现,让 Flutter 应用能够检测鸿蒙设备的网络连接类型。
安装
在 pubspec.yaml 中添加依赖:
dependencies:
connectivity_plus: ^5.0.2
connectivity_plus_ohos: ^0.0.3
权限配置
在 module.json5 中添加网络权限:
"requestPermissions": [
{"name": "ohos.permission.INTERNET"},
{"name": "ohos.permission.GET_NETWORK_INFO"}
]
核心 API
检查当前网络状态
import 'package:connectivity_plus/connectivity_plus.dart';
final result = await Connectivity().checkConnectivity();
if (result.contains(ConnectivityResult.wifi)) {
// Wi-Fi 网络
} else if (result.contains(ConnectivityResult.mobile)) {
// 移动网络
} else if (result.contains(ConnectivityResult.ethernet)) {
// 有线网络
} else if (result.contains(ConnectivityResult.none)) {
// 无网络连接
}
监听网络变化
import 'package:connectivity_plus/connectivity_plus.dart';
import 'dart:async';
StreamSubscription? subscription;
void startListening() {
subscription = Connectivity().onConnectivityChanged.listen((result) {
// 网络状态变化时触发
});
}
void stopListening() {
subscription?.cancel();
}
支持的连接类型
| 类型 |
说明 |
wifi |
Wi-Fi 网络 |
mobile |
移动数据网络 |
ethernet |
有线网络 |
bluetooth |
蓝牙网络 |
vpn |
VPN 连接 |
satellite |
卫星网络 |
other |
其他网络类型 |
none |
无网络连接 |
项目地址:github.com/harmonycandies/connectivity_plus_ohos[2]
引用链接
[1]connectivity_plus: https://pub.dev/packages/connectivity_plus
[2]github.com/harmonycandies/connectivity_plus_ohos: https://github.com/harmonycandies/connectivity_plus_ohos