HarmonyOS 如何监听网络从无到有--

需要对网络从关闭到开启的变化情况下进行事件处理,请问应该如何在页面中监听网络变化

HarmonyOS
2024-12-19 17:15:29
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang
export default class EntryAbility extends UIAbility {
  // netCon : connection.NetConnection = connection.createNetConnection();
  onCreate(want: Want, launchParam: AbilityConstant.LaunchParam) {
    // MainAbility onCreate, isStageMode: true
    console.log('MainAbility onCreate, isStageMode: ' + this.context.stageMode);
    hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate');
    // let netCon1 : connection.NetConnection = connection.createNetConnection();
    //开启监听事件
    this.netCon.register((error: BusinessError) => {
      console.log("test register" + JSON.stringify(error));
    });
  }

  //网络状态监听
  netCon: connection.NetConnection = connection.createNetConnection();

  connTest() {
    //监听网络是否可用
    this.netCon.on('netAvailable', (data) => {
      console.log("test net status netAvailable" + JSON.stringify(data))
    })

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

    this.netCon.on("netLost", (data) => {
      console.log("test netLost" + JSON.stringify(data))
    })
    this.netCon.on('netUnavailable', (data) => {
      console.log("test net status netUnavailable" + JSON.stringify(data))
    })

  }

  onDestroy() {
    hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onDestroy');
    this.netCon.unregister((error: BusinessError) => {
      console.log("test unregister" + JSON.stringify(error));
    });
  }

  onWindowStageCreate(windowStage: window.WindowStage) {
    // Main window is created, set main page for this ability
    hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate');
    windowStage.loadContent('pages/Index', (err, data) => {
      if (err.code) {
        hilog.error(0x0000, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err) ?? '');
        return;
      }
      hilog.info(0x0000, 'testTag', 'Succeeded in loading the content. Data: %{public}s', JSON.stringify(data) ?? '');
    });
  }

分享
微博
QQ
微信
回复
2024-12-19 19:13:35
相关问题
网络监听的最佳实践哪些?
1635浏览 • 1回复 待解决
HarmonyOS 什么方法可以监听网络切换
1192浏览 • 1回复 待解决
HarmonyOS 监听网络错误
769浏览 • 1回复 待解决
HarmonyOS网络监听问题
1114浏览 • 1回复 待解决
HarmonyOS 网络变化监听失效
1014浏览 • 1回复 待解决
如何保存网络图片相册
2063浏览 • 1回复 待解决
如何监听判断VPN类型网络
1227浏览 • 1回复 待解决
HarmonyOS 网络连接监听问题
1242浏览 • 1回复 待解决
HarmonyOS 网络监听回调多次
1051浏览 • 1回复 待解决
HarmonyOS 网络监听api怎么用
1055浏览 • 1回复 待解决
如何保存http网络图片本地
1266浏览 • 1回复 待解决
HarmonyOS 怎么实现网络切换的监听
1109浏览 • 1回复 待解决
用户端网络质量如何进行监听
1095浏览 • 1回复 待解决
HarmonyOS 如何检测是否网络链接
760浏览 • 1回复 待解决
如何实现一个监听网络变化的方法
1584浏览 • 1回复 待解决