flutter 网络延迟监测

使用flutter控件dart_ping实现,可以监测到网速较差或网络断开的情况;

要在 iOS 上使用 dart_ping,请将dart_ping_ios包添加为依赖项并在初始化 Ping 之前注册 iOS 插件。

dart_ping_ios控件地址:dart_ping_ios | Flutter Package

dart_ping控件地址:dart_ping | Dart Package

1.下载插件

1在配置文件pubbspec.yaml中添加以下代码,注意版本选择目前flutterSDK支持的版本;然后运行flutter pub get同步插件;


dart_ping_ios: ^1.0.0
dart_ping: ^6.1.0

2.注册 iOS控件dart_ping_ios

如果不需要支持ios设备可跳过此步

一定要在 dart_ping初始化前注册它;


      //在dart_ping初始化前添加此行代码
      DartPingIOS.register();

3.使用dart_ping


     /*1.初始化*/
     final ping = Ping(
     /*必传参数*/
     'baidu.com',//参数1:host
     /*可选参数*/
      count: 50,//参数2:需要ping的次数,默认无限次
      interval: 1,//参数3:每几秒ping一次,默认1次
      );
      //timeout: 2,//参数4:几秒超时,默认2秒
      //ttl: 255,//参数5:可ping的路由器数量,默认255个
      //ipv6: false,//参数6:是否ipv6,默认false
      //PingParser? parser,//参数7:解析器,默认不传
      //Encoding encoding = const Utf8Codec(),//参数7:编码,默认Utf8
      
      /*2.开始监测网络延迟状态*/
     ping.stream.listen((event) {
     debugPrint('输出监测到的网络状态信息===========$event');
     //输出数据内容-->网络正常
     //PingResponse(seq:1,ttl:54,time:38.112 ms)
     //seq已经ping的次数
     //ttl路由器数量
     //time延迟的毫秒数
     //输出数据内容-->网络较差或网络断开
     //PingResonse(response:PingResponse(seq:1),error:RequestTimedOut)
     if (event.error != null) {
         print("网络较差或网络断开")
      }
      
      /*3.停止监听*/
      //建议在app销毁时停止ping进程
      //ping.stop();
    });

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小人参Y

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值