HarmonyOS connection监听断网事件

使用 connection 创建网络监听事件,当手机没有电话卡使用移动网络,先连接 wifi,创建监听事件,然后关闭 wifi,不会触发监听的 ‘netUnavailable’ 和 ‘netLost’ 事件

示例代码

function onNetworkStatusChange() {
  let netConnection = connection.createNetConnection();
  netConnection.register((error) => {
    if (error) {
      return
    }
  })
  netConnection.on('netConnectionPropertiesChange', () => {
    console.info("netConnectionPropertiesChange");
  })
  netConnection.on('netBlockStatusChange', () => {
    console.info("netBlockStatusChange");
  })
  netConnection.on('netLost', () => {
    console.info("netLost");
  })
  netConnection.on('netUnavailable', () => {
    console.info("netUnavailable");
  })
  netConnection.on('netCapabilitiesChange', async (data: connection.NetCapabilityInfo) => {
    console.info("Succeeded to get data: " + JSON.stringify(data));
  });
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
HarmonyOS
2024-12-25 17:06:03
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
shlp

后续监听调用需要将netConnection 参数创建作为全局变量调用,可参考如下方式:

//网络状态监听
netCon : connection.NetConnection = connection.createNetConnection();
connTest(){
  //开启监听事件
  this.netCon.register((error: BusinessError) => {
    console.log(JSON.stringify(error));
  });
  //监听网络是否可用
  this.netCon.on('netAvailable', async (data) => {
    console.log("1---- net status netAvailable" + JSON.stringify(data))
  })

  this.netCon.on('netCapabilitiesChange', (data: connection.NetCapabilityInfo) => {
    console.log(JSON.stringify(data));
  });

  this.netCon.on("netLost",(data) => {
    console.log("1---- net lost" + JSON.stringify(data))
  })
  this.netCon.on('netUnavailable', (data) => {
    console.log("1---- net status netUnavailable" + JSON.stringify(data))
  })
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
分享
微博
QQ
微信
回复
2024-12-25 19:51:55
相关问题
HarmonyOS 键盘事件监听问题
1516浏览 • 1回复 待解决
HarmonyOS 点击事件监听问题
845浏览 • 1回复 待解决
HarmonyOS 如何监听屏幕旋转事件
638浏览 • 1回复 待解决
鸿蒙 怎么监听开机事件
4308浏览 • 1回复 待解决
HarmonyOS 如何监听截屏事件触发
1019浏览 • 1回复 待解决
HarmonyOS 分段按钮的监听事件
1443浏览 • 1回复 待解决
HarmonyOS 如何监听电话挂断事件
707浏览 • 1回复 待解决
HarmonyOS eventHub注册和移除事件监听
1395浏览 • 1回复 待解决
HarmonyOS 控件的长按事件怎么监听
929浏览 • 1回复 待解决
HarmonyOS 如何监听屏幕截屏事件
884浏览 • 1回复 待解决
HarmonyOS ArkTS怎么写回调事件监听
1132浏览 • 1回复 待解决
HarmonyOS 页面返回事件如何监听
790浏览 • 1回复 待解决
HarmonyOS应用前后台状态切换事件监听
1814浏览 • 1回复 待解决
HarmonyOS 是否有监听点击事件的API
789浏览 • 1回复 待解决
通知栏点击事件监听的方法
1195浏览 • 1回复 待解决
HarmonyOS websocket网后如何重连
1129浏览 • 1回复 待解决