一、网络状态概述

在这里插入图片描述
上述任一指标的变化均可视为网络状态的改变

二、获取网络信息

创建网络对象

//创建网络对象
//?表示可传可不传
connection.createNetConnection(netSpecifier?:NetSpecifier,timeout?:number):NetConnection;

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

获取默认激活网络及其能力

//获取默认激活网络
connection.getDefaultNet(): Promise<NetHandle> 

NetHandle是数据网络的句柄 其属性netId表示网络ID,通过调用getNetCapabilities方法,传入NetHandle对象,可以获取对应网络的具体能力,返回值NetCapabilities表示网络能力集,包含网络的具体能力信息
示例中,通过这两个方法配合使用,可以获取网络能力,若getDefaultNet方法返回的netHandle的netId为0,表示无默认网络,则需要根据实际情况添加处理机制,则表示已成功获取默认网络,此时可以通过getNetCapabilities方法获取其能力集
在这里插入图片描述

三、订阅网络状态

以视频应用为例 当网络状态可以正常获取资源时,视频正常播放。当网络断开时,无法加载网络资源,则需要向用户发出提示,要实现这样的功能,需要订阅其对应事件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

网络可用事件

//netAvailable固定事件类型  回调函数的入参是数据网络句柄NetHandle,在回调方法中可以通过NetHandle对象进行业务处理,在设备链接到可用网络时会出发网络可用事件
on(type:'netAvailable',callback:Callback:Callback<NetHandle>):void

在这里插入图片描述

网络阻塞状态事件

固定事件类型netBlockStatusChange,回调函数,入参是网络阻塞状态信息NetBlockStatusInfo,NetBlockStatusInfo有两个字段,分别是 netHandle和blocked。blocked是一个boolean类型的变量,表示当前网络是否是阻塞状态,网络阻塞状态事件会在建立网络连接时超时,传输数据包丢失或网络带宽不足,负载过高的场景下触发
on(type:'netBlockStatusChange',callback:Callback<NetBlockStatusInfo>):void;

在这里插入图片描述

网络能力变化事件

固定事件类型 netCapabilitiesChange,回调函数的入参是承载数据网络能力的实例NetCapabilityInfo,它的两个字段netHandle和netCapabilities分别表示数据网络句柄和网络能力集,当网络的能力,比如类型、带宽等能力发生变化时,会触发网络能力变化事件
on(type:'netCapabilitiesChange',callback:Callback<NetCapabilityInfo>):void;

在这里插入图片描述

网络连接信息变化事件

网路连接信息变化事件,固定的事件类型是netConnectionPropertiesChange,固定事件类型netConnectionPropertiesChange,回调函数入参NetConnectionPropertyInfo,表示网络连接信息,它包含两个字段,分别是数据网络句柄和网络连接属性,网络连接属性包含常用的网络连接信息,如网卡名称、域名等等,当网络连接的信息,比如IP地址、网关等发生变化时,会触发网络连接信息变化事件
on(type: 'netConnectionPropertiesChange',callback:Callback<NetConnectionPropertyInfo>):void

在这里插入图片描述

网络丢失事件

固定事件类型netLost 回调函数入参是数据网络句柄NetHandle,当设备失去网络连接时会触发网络丢失事件
on(type: 'netLost',callback:Callback<NetHandle>):void

在这里插入图片描述

网络不可用事件

网络不可用事件用netUnavailable表示,它的回调函数没有入参,在设备处于无网络状态或网络不可用的时候触发

在这里插入图片描述

常见事件订阅场景

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

四、开发实践

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/87626.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/87626.shtml
英文地址,请注明出处:http://en.pswp.cn/pingmian/87626.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

探索开源虚拟 Excel 函数模块:Python 中的 Excel 功能利器

在数据处理和分析的领域中&#xff0c;Excel 一直是一款备受青睐的工具&#xff0c;它提供了丰富多样的函数&#xff0c;帮助用户高效地完成各种数据操作。而现在&#xff0c;我&#xff08;董翔&#xff09;开发一个基于 Python 的虚拟 Excel 函数模块&#xff0c;它将 Excel …

开源 vGPU 方案 HAMi: corememory 隔离测试

本文主要对开源的 vGPU 方案 HAMi 的 GPU Core&Memory 隔离功能进行测试。 省流&#xff1a; HAMi vGPU 方案提供的 Core&Memory 隔离基本符合预期&#xff1a; Core 隔离&#xff1a;Pod 能使用的算力会围绕设定值波动&#xff0c;但是一段时间内平均下来和申请的 g…

openstack安装并初始化

openstack安装并初始化openStack 概述OpenStack 起源什么是Openstackopenstack优势使用本地仓库离线安装系统基本环境设置为系统设置本地仓库创建openstack-train的仓库更新系统安装部署工具一键安装设置桥接网络通过 Dashboard 体验 OpenStack 功能创建云主机创建网络(1)用adm…

解决 Cannot create Swift scratch context

场景复现 Xcode 控制台输出&#xff1a; Cannot create Swift scratch context (couldnt create a Clang Importer)Analysis 分析 发生了什么&#xff1f; 在调试 Swift 代码或在 LLDB 里执行 po/expr 命令时&#xff0c;LLDB 需要为表达式临时创建一份 “Swift scratch co…

机械时代的计算

1、机械计算起源 最近在想平衡三进制的除法&#xff0c;想看看那么大牛是怎么做的&#xff0c;资料很少&#xff0c;但还是有的&#xff0c;有但是看不懂&#xff0c;也不知靠不靠谱&#xff0c;后面跟着实践了能行&#xff0c;下面就看看Balanced Ternary Arithmetic&#xff…

相机光学(四十八)——渐晕

1.什么是渐晕 渐晕&#xff0c;又称“光衰减”&#xff0c;在光学和摄影中很常见&#xff0c;简单来说就是与中心相比&#xff0c;图像角落变暗。渐晕要么是由光学引起的&#xff0c;要么是在后期处理中故意添加的&#xff0c;目的是将观看者的视线从角落的干扰物吸引到图像的中…

LabVIEW多通道阻抗测试仪

LabVIEW集成 Keysight 数字万用表与 NI 矩阵开关卡&#xff0c;构建多通道阻抗测试系统&#xff0c;实现设备连接电缆的多芯阻抗自动化测试&#xff0c;涵盖数据采集、分析、记录与显示功能&#xff0c;适用于高精度阻抗检测场景&#xff0c;展现LabVIEW在仪器控制与自动化测试…

MySQL的5.0和8.0版本区别

目录 1、MySQL版本-- 》5版本 1.1、InnoDB存储引擎 1.2、存储过程和触发器 1.3、视图 1.4、增强的查询优化器 1.5、增强的索引支持 1.6、外键支持 1.7、分区表和分布式查询 2、MySQL版本-- 》8版本 2.1、性能 2.2、字符编码改变 2.3、持久化保存 2.4、隐藏索引和降…

python实现简单的地图绘制与标记20250705

用python语言绘制显示范围不大于上海地区的地图 您的代码实现了一个 上海武馆地理信息系统&#xff0c;主要功能是通过可视化地图展示上海各区的传统武术馆信息。 通过和deeps对话一晚上实现的&#xff0c;我就是描述修改 高德的api key我搞了一会&#xff0c;平时很少接触密…

Qt开发:QListWidget的介绍和使用

文章目录 一、QListWidget的简介二、QListWidget的基本用法三、QListWidget的数据操作2.1 插入数据2.2 查找数据2.3 选项设置 四、QListWidget的信号与槽 一、QListWidget的简介 QListWidget 是 Qt 框架中用于显示和操作条目列表的控件&#xff0c;它是 QListView 的一个子类&a…

React Native 亲切的组件们(函数式组件/class组件)和陌生的样式

写多了taro, 看见react native中的组件好亲切啊&#xff0c;几乎一模一样。 一、函数式组件 — 常用 1&#xff09;无状态&#xff0c;每次刷新都是生成一个新的状态 2&#xff09;基于状态变化的管理 3&#xff09;简洁&#xff0c;代码少&#xff0c;易于服用 import Reac…

Spring boot之身份验证和访问控制

本文笔记跟随于遇见狂神说老师的视频 一.SpringSecurity&#xff08;安全&#xff09; 1.相关概念 在web开发中&#xff0c;安全第一位&#xff0c;有简单的方法&#xff0c;比如&#xff1a;拦截器&#xff0c;过滤器 也有安全框架&#xff0c;比如&#xff1a;SpringSecu…

C#使用开源框架NetronLight绘制流程图

之前使用MindFusion.Diagramming绘制流程图确认很方便&#xff0c;只能试用版&#xff0c;如果长期使用&#xff0c;需要收费。 C#使用MindFusion.Diagramming框架绘制流程图(2):流程图示例_c# 画流程图控件-CSDN博客 这里找一个简易开源框架NetronLight&#xff0c;GIT下载地…

支持向量机(SVM)在脑部MRI分类中的深入应用与实现

🧑 博主简介:CSDN博客专家、CSDN平台优质创作者,高级开发工程师,数学专业,10年以上C/C++, C#, Java等多种编程语言开发经验,拥有高级工程师证书;擅长C/C++、C#等开发语言,熟悉Java常用开发技术,能熟练应用常用数据库SQL server,Oracle,mysql,postgresql等进行开发应用…

AtCoder AT_abc413_c [ABC413C] Large Queue 题解

题目大意 有一个初始为空的序列 A A A&#xff0c; Q Q Q 次操作分为两类&#xff1a; 第一类&#xff1a;将 c c c 个 x x x 放到 A A A 的末尾。第二类&#xff1a;将前 k k k 个数的和输出并移除它们。 思路 这是一个求和问题&#xff0c;想到的第一个思路是前缀和…

「源力觉醒 创作者计划」_文心大模型开源:开启 AI 新时代的大门

在人工智能的浩瀚星空中&#xff0c;大模型技术宛如一颗璀璨的巨星&#xff0c;照亮了无数行业前行的道路。自诞生以来&#xff0c;大模型凭借其强大的语言理解与生成能力&#xff0c;引发了全球范围内的技术变革与创新浪潮。百度宣布于 6 月 30 日开源文心大模型 4.5 系列&…

Git 怎么判断是否冲突?

&#x1f4cc; [Q&A] Git 怎么判断是否冲突&#xff1f; Git 使用的是三路合并算法&#xff08;Three-way Merge&#xff09;&#xff0c;它比较&#xff1a; 共同祖先提交&#xff08;base&#xff09; 当前分支的改动&#xff08;ours&#xff09; 被合并分支的改动&am…

在sf=0.1时测试fireducks、duckdb、polars的tpch

首先&#xff0c;从https://github.1git.de/fireducks-dev/polars-tpch下载源代码包&#xff0c;将其解压缩到/par/fire目录。 然后进入此目录&#xff0c;运行 SCALE_FACTOR0.1 ./run-fireducks.sh&#xff0c;脚本会首先安装所需的包&#xff0c;编译tpch的数据生成器&#x…

AWS多账号管理终极指南:从安装配置到高效使用

引言:为什么需要多账号管理? 在云计算时代,企业使用多个AWS账号已成为最佳实践。根据AWS Well-Architected Framework,多账号架构可以: 实现环境隔离(生产/测试/开发)满足不同业务单元的安全要求简化资源管理和成本分配符合合规性要求(如SOC2、ISO27001)本文将手把手…

UE5音频技术

1 . 调制器 Modulator 调整参数 调制器可以使声音每次音高都不一样 2. 随机 节点 3. 混音器 Mixer 混合两个音频 4. 串联器 Concatenator 按循序播放 5.多普勒 Doppler 根据距离音频变化 6.包络线 Enveloper 武器充能发射 7.混响