HarmonyOS网络监听问题

想监听网络变化,请问注册网络监听的代码实现怎么写?

HarmonyOS
2024-09-10 12:23:10
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zxjiu

监听网络推荐使用netConnect,参考demo如下:

import connection from '@ohos.net.connection'; 
import { BusinessError } from "@ohos.base"; 
import { hilog } from '@kit.PerformanceAnalysisKit'; 
@Entry 
@Component 
struct Index { 
  @State message: string = 'Hello World'; 
 
  onPageShow(): void { 
    this.init(); 
  } 
 
  init(){ 
    let netCon: connection.NetConnection = connection.createNetConnection(); 
    netCon.register((error: BusinessError) => { 
      if(error==undefined){ 
        hilog.info(0x0000,"网络状态","注册成功") 
      }else { 
        hilog.info(0x0000,"网络状态","注册失败 error is %s",JSON.stringify(error)) 
      } 
 
 
    }); 
 
    // 订阅网络可用事件。调用register后,才能接收到此事件通知 
    netCon.on('netAvailable', (data: connection.NetHandle) => { 
      hilog.info(0x0000,"网络状态",'网络状态可用 ' + JSON.stringify(data)); 
    }); 
    // 订阅网络不可用事件。调用register后,才能接收到此事件通知 
    netCon.on('netUnavailable', () => { 
      hilog.info(0x0000,"网络状态",'网络状态不可用1 '); 
    }); 
    netCon.on('netLost', () => { 
      hilog.info(0x0000,"网络状态",'网络状态不可用2 '); 
    }); 
 
    // 订阅网络连接信息变化事件。调用register后,才能接收到此事件通知 
    netCon.on('netConnectionPropertiesChange', (data: connection.NetConnectionPropertyInfo) => { 
      hilog.info(0x0000,"网络状态","Succeeded to get data: " + JSON.stringify(data)); 
    }); 
 
    connection.getDefaultNet().then((netHandle)=>{ 
      connection.reportNetDisconnected(netHandle).then(()=> { 
        hilog.info(0x0000,"网络状态",'reportNetDisconnected '); 
      }); 
    }); 
 
  } 
 
  build() { 
    Row() { 
      Column() { 
        Text(this.message) 
          .fontSize(50) 
          .fontWeight(FontWeight.Bold) 
      } 
      .width('100%') 
    } 
    .height('100%') 
  } 
}
分享
微博
QQ
微信
回复
2024-09-10 15:52:44
相关问题
HarmonyOS 键盘事件监听问题
325浏览 • 1回复 待解决
如何对监听判断VPN类型网络
310浏览 • 1回复 待解决
网络监听的最佳实践有哪些?
302浏览 • 1回复 待解决
HarmonyOS 关于@Watch监听状态问题
272浏览 • 1回复 待解决
HarmonyOS http网络访问,参数问题
31浏览 • 1回复 待解决
用户端网络质量如何进行监听
220浏览 • 1回复 待解决
HarmonyOS Image 加载网络图片问题
382浏览 • 1回复 待解决
HarmonyOS网络请求后JSON转换问题
524浏览 • 1回复 待解决
如何实现一个监听网络变化的方法
433浏览 • 1回复 待解决
网络类型细分判断问题咨询
222浏览 • 1回复 待解决
网络请求创建后,持久化问题
497浏览 • 1回复 待解决
系统监听注册的on和off的用法问题
1672浏览 • 1回复 待解决
网络请求数据处理问题
233浏览 • 1回复 待解决
关于Image组件加载网络图片的问题
297浏览 • 1回复 待解决
网络连接管理connection中this指向问题
496浏览 • 1回复 待解决
HarmonyOS 如何实现滑动监听
171浏览 • 1回复 待解决