HarmonyOS 如何实现随时可以拿到设备当前是否联网?
用如下代码进行对网络进行监听,希望随时可以通过MyNetConnection的isNetAvailable方法得到设备当前是否联网。应用中MyNetConnection是一个单例对象。但实际测试,发现仅是第一次调用startNetStatusMonitor方法时,可以收到netAvailable或者netUnavailable回调。当在手机上操作关闭网络,开启网络时,再回到应用里面都无法收到网络状态的变化回调。如何实现随时可以拿到设备当前是否联网?
export class MyNetConnection {
private _netCon: connection.NetConnection = connection.createNetConnection()
private _isNetAvailable: boolean = true
public isNetAvailable(): boolean {
return this._isNetAvailable
}
public startNetStatusMonitor(): void {
this._netCon.register((error: BusinessError) => {});
this._netCon.on('netAvailable', (data: connection.NetHandle) => {
this._isNetAvailable = true
});
this._netCon.on('netUnavailable', () => {
this._isNetAvailable = false
});
}
}
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
获取当前网络状态,当前是否已经联网,当前联网类型,网络是否可用。
2478浏览 • 1回复 待解决
HarmonyOS 有api可以拿到当前设备上已经添加的服务卡片列表吗
263浏览 • 1回复 待解决
HarmonyOS 拿到node后有什么方法可以判断当前这个组件是否在屏幕范围内显示
387浏览 • 1回复 待解决
HarmonyOS 如何判断当前设备是否开启无障碍朗读功能
579浏览 • 1回复 待解决
怎样判断当前设备是否连接了VPN?
1395浏览 • 1回复 待解决
如何获取当前设备的设备名称
3019浏览 • 1回复 待解决
HarmonyOS 如何查询当前设备有无网络(蜂窝和无线),如果不能是否可以跳转到网络设置页面
366浏览 • 1回复 待解决
HarmonyOS 如何获取当前联网的SIM卡的运营商类型
364浏览 • 1回复 待解决
HarmonyOS 如何获取设备信息,如果系统、版本、当前是否有网络连接
393浏览 • 1回复 待解决
获取定位信息是否必须联网
1945浏览 • 1回复 待解决
HarmonyOS UDP广播可以发送数据后如何才能随时监听局域网下的消息传输
414浏览 • 1回复 待解决
NAN无法配网成功,设备侧联网失败
9069浏览 • 2回复 待解决
如何获取当前设备的宽度?
1107浏览 • 1回复 待解决
HarmonyOS 是否有可以获取当前应用角标的方法
434浏览 • 1回复 待解决
鸿蒙OS的mesh组网功能在物联网设备上(liteos-m内核)是否支持?
8043浏览 • 1回复 待解决
HarmonyOS 获取当前设备是否能够连接到网络的API
385浏览 • 1回复 待解决
router支持在拿到当前 page 的 routeName 吗
1911浏览 • 1回复 待解决
HarmonyOS 如何获取appVersion、appid、当前设备名称
1122浏览 • 1回复 待解决
HarmonyOS 如何获取当前设备的 IP 地址
716浏览 • 1回复 待解决
定位是否必须联网才能成功?
2276浏览 • 1回复 待解决
物联网与设备之间的连接主要通过什么?
4769浏览 • 1回复 待解决
HarmonyOS 当前HarmonyOS如何获取当前的主窗口,目前geLastWindow只能拿到最上边的,拿不到主窗口
151浏览 • 1回复 待解决
HarmonyOS 有判断当前设备是否有发送短信能力的接口吗?
562浏览 • 1回复 待解决
HarmonyOS开发中,如何结合物联网技术实现智能家居设备的远程控制与自动化?
642浏览 • 0回复 待解决
有没有接口能判断当前设备是否为模拟器?
754浏览 • 1回复 待解决
netUnavailable:网络不可用事件,意思是连接到网络,但网络不可用。
netLost:网络严重中断或正常断开事件,意思是设备没有连接到网络。
举例的话:netUnavailable是连接wifi但是wifi有问题的时候触发回调,断开wifi会通过netLost回调。
'netAvailable’用于当前网络可用状态的监听 在当前连接可以进行访问的网络时返回, 'netUnavailable’事件为网络已连接但不可访问时返回时回调, netAvailable和netUnavailable均需要以连接网络状态为前提,网络可用调用netAvailable,网络不可用调用netUnavailable。
参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-net-connection-V5#onnetavailable
根据描述的情况,应该需要使用netLost