在烧录的4.0的开发板上,为什么会存在监听不到网络断开的事件?

鸿蒙小语哥 显示全部楼层 发表于 前天 14:15

我的需求是:依据系统设置的网络优先级,在下载文件过程中,判断支持的网络类型有哪些,断开优先级网较低的网络或者断开唯一支持的网络都走“netlost”监听事件,如果新接入的网络是蜂窝网络也需要走“netlost”监听事件。

实际情况: 烧录的4.0的开发板,存在同时连接以太网、WiFi、数据网络的情况, 想要动态监听某个网络断开的情况,为什么会出现监听不到网络断开情况(比如同时连接WiFi和打开数据流量,关闭wifi监听不到网络丢失)

部分代码:

//方式一
netCon: connection.NetConnection = connection.createNetConnection({
netCapabilities: {
bearerTypes: [connection.NetBearType.BEARER_WIFI,
connection.NetBearType.BEARER_ETHERNET,
connection.NetBearType.BEARER_CELLULAR] }
});

//方式二
// netCon: connection.NetConnection = connection.createNetConnection({
// netCapabilities: {
// bearerTypes: [connection.NetBearType.BEARER_CELLULAR] }
// });


aboutToAppear() {
this.netCon.register((error) => {
Logger.info(TAG, "error=======" + JSON.stringify(error))
})

this.netCon.on('netLost', (data) => {
Logger.info(TAG, "netLost====" + JSON.stringify(data))

})
}

以上代码创建一个NetConnection对象时, bearerTypes是传入数组类型。不确定是否支持方式一的写法(看官方文档和示例,都是方式二的写法),这种写法能否监听wifi、以太网、蜂窝网络三种网络类型的事件。

大家有什么好的方案吗?

您尚未登录,无法参与评论,登录后可以:
参与开源共建问题交流
认同或收藏高质量问答
获取积分成为开源共建先驱

精彩评论1

fengyunrenwu

沙发 发表于 昨天 18:59
4.0已经不再维护了,要用4.1 Release

Copyright   ©2023  OpenHarmony开发者论坛  京ICP备2020036654号-3 |技术支持 Discuz!

返回顶部