网站搜索引擎优化报告搭建平台网站
- 作者: 五速梦信息网
- 时间: 2026年06月19日 07:29
当前位置: 首页 > news >正文
网站搜索引擎优化报告,搭建平台网站,c 开发商城网站开发,wordpress 分类函数简介
网络连接管理提供管理网络一些基础能力#xff0c;包括WiFi/蜂窝/Ethernet等多网络连接优先级管理、网络质量评估、订阅默认/指定网络连接状态变化、查询网络连接信息、DNS解析等功能。
说明
为了保证应用的运行效率#xff0c;大部分API调用都是异步的#xff0c;对…简介
网络连接管理提供管理网络一些基础能力包括WiFi/蜂窝/Ethernet等多网络连接优先级管理、网络质量评估、订阅默认/指定网络连接状态变化、查询网络连接信息、DNS解析等功能。
说明
为了保证应用的运行效率大部分API调用都是异步的对于异步调用的API均提供了callback和Promise两种方式以下示例均采用promise函数。
基本概念
网络生产者数据网络的提供方比如WiFi、蜂窝、Ethernet等。网络消费者数据网络的使用方比如应用或系统服务。网络探测检测网络有效性避免将网络从可用网络切换到不可用网络。内容包括绑定网络探测、DNS探测、HTTP探测及HTTPS探测。网络优选处理多网络共存时选择最优网络。在网络状态、网络信息及评分发生变化时被触发。
约束
开发语言JS本模块首批接口从API version 8开始支持。后续版本的新增接口采用上角标单独标记接口的起始版本。
场景介绍
网络连接管理的典型场景有
接收指定网络的状态变化通知获取所有注册的网络根据数据网络查询网络的连接信息使用对应网络解析域名获取所有IP
以下分别介绍具体开发方式。
接口说明
接口名描述getDefaultNet(callback: AsyncCallback): void;获取一个含有默认网络的netId的NetHandle对象使用callback回调getGlobalHttpProxy(callback: AsyncCallback): void;获取网络的全局代理设置使用callback回调setGlobalHttpProxy(httpProxy: HttpProxy, callback: AsyncCallback): void;设置网络全局Http代理配置信息使用callback回调setAppHttpProxy(httpProxy: HttpProxy): void;设置网络应用级Http代理配置信息getAppNet(callback: AsyncCallback): void;获取一个App绑定的包含了网络netId的NetHandle对象使用callback回调setAppNet(netHandle: NetHandle, callback: AsyncCallback): void;绑定App到指定网络绑定后的App只能通过指定网络访问外网。使用callback回调getDefaultNetSync(): NetHandle;使用同步方法获取默认激活的数据网络。可以使用getNetCapabilities去获取网络的类型、拥有的能力等信息。hasDefaultNet(callback: AsyncCallback): void;检查默认数据网络是否被激活使用callback回调getAllNets(callback: AsyncCallbackArray): void;获取所处于连接状态的网络的NetHandle对象列表使用callback回调getConnectionProperties(netHandle: NetHandle, callback: AsyncCallback): void;查询netHandle对应的网络的连接信息使用callback回调getNetCapabilities(netHandle: NetHandle, callback: AsyncCallback): void;获取netHandle对应的网络的能力信息使用callback回调isDefaultNetMetered(callback: AsyncCallback): void;检查当前网络上的数据流量使用是否被计量使用callback方式作为异步方法reportNetConnected(netHandle: NetHandle, callback: AsyncCallback): void;向网络管理报告网络处于可用状态调用此接口说明应用程序认为网络的可用性ohos.net.connection.NetCap.NET_CAPABILITY_VAILDATED与网络管理不一致。使用callback回调reportNetDisconnected(netHandle: NetHandle, callback: AsyncCallback): void;向网络管理报告网络处于不可用状态调用此接口说明应用程序认为网络的可用性ohos.net.connection.NetCap.NET_CAPABILITY_VAILDATED与网络管理不一致。使用callback回调getAddressesByName(host: string, callback: AsyncCallbackArray): void;使用对应网络解析域名获取所有IP使用callback回调enableAirplaneMode(callback: AsyncCallback): void;设置网络为飞行模式使用callback回调disableAirplaneMode(callback: AsyncCallback): void;关闭网络飞行模式使用callback回调createNetConnection(netSpecifier?: NetSpecifier, timeout?: number): NetConnection;返回一个NetConnection对象netSpecifier指定关注的网络的各项特征timeout是超时时间(单位是毫秒)netSpecifier是timeout的必要条件两者都没有则表示关注默认网络bindSocket(socketParam: TCPSocketUDPSocket, callback: AsyncCallback): void;getAddressesByName(host: string, callback: AsyncCallbackArray): void;使用对应网络解析域名获取所有IP使用callback回调getAddressByName(host: string, callback: AsyncCallback): void;使用对应网络解析域名获取一个IP调用callbacon(type: ‘netAvailable’, callback: Callback): void;订阅网络可用事件on(type: ‘netCapabilitiesChange’, callback: Callback): void;订阅网络能力变化事件on(type: ‘netConnectionPropertiesChange’, callback: Callback{ netHandle: NetHandle, connectionProperties: ConnectionProperties }): void;订阅网络连接信息变化事件on(type: ‘netBlockStatusChange’, callback: Callback{ netHandle: NetHandle, blocked: boolean }): void;订阅网络阻塞状态事件使用callback方式作为异步方法on(type: ‘netLost’, callback: Callback): void;订阅网络丢失事件on(type: ‘netUnavailable’, callback: Callback): void;订阅网络不可用事件register(callback: AsyncCallback): void;订阅指定网络状态变化的通知unregister(callback: AsyncCallback): void;取消订阅默认网络状态变化的通知
接收指定网络的状态变化通知 声明接口调用所需要的权限ohos.permission.GET_NETWORK_INFO。 此权限级别为normal在申请权限前请保证符合[权限使用的基本原则] 从kit.NetworkKit中导入connection命名空间。 调用createNetConnection方法指定网络能力、网络类型和超时时间可选如不传入代表默认网络创建不同于默认网络时可通过指定这些参数完成创建一个NetConnection对象。 调用该对象的on()方法传入type和callback订阅关心的事件。 调用该对象的register()方法订阅指定网络状态变化的通知。 当网络可用时会收到netAvailable事件的回调当网络不可用时会收到netUnavailable事件的回调。 当不使用该网络时可以调用该对象的unregister()方法取消订阅。
// 引入包名
import { connection } from kit.NetworkKit;
import { BusinessError } from kit.BasicServicesKit;let netSpecifier: connection.NetSpecifier {netCapabilities: {// 假设当前默认网络是WiFi需要创建蜂窝网络连接可指定网络类型为蜂窝网bearerTypes: [connection.NetBearType.BEARER_CELLULAR],// 指定网络能力为InternetnetworkCap: [connection.NetCap.NET_CAPABILITY_INTERNET]},
};// 指定超时时间为10s(默认值为0)
let timeout 10 * 1000;// 创建NetConnection对象
let conn connection.createNetConnection(netSpecifier, timeout);// 订阅指定网络状态变化的通知
conn.register((err: BusinessError, data: void) {console.log(JSON.stringify(err));
});// 订阅事件如果当前指定网络可用通过on_netAvailable通知用户
conn.on(netAvailable, ((data: connection.NetHandle) {console.log(net is available, netId is data.netId);
}));// 订阅事件如果当前指定网络不可用通过on_netUnavailable通知用户
conn.on(netUnavailable, ((data: void) {console.log(net is unavailable, data is JSON.stringify(data));
}));// 当不使用该网络时可以调用该对象的unregister()方法取消订阅
conn.unregister((err: BusinessError, data: void) {
});获取所有注册的网络 声明接口调用所需要的权限ohos.permission.GET_NETWORK_INFO。 此权限级别为normal在申请权限前请保证符合[权限使用的基本原则] 从kit.NetworkKit中导入connection命名空间。 调用getAllNets方法获取所有处于连接状态的网络列表。
// 引入包名
import { connection } from kit.NetworkKit;
import { BusinessError } from kit.BasicServicesKit;// 构造单例对象
export class GlobalContext {public netList: connection.NetHandle[] [];private constructor() {}private static instance: GlobalContext;private _objects new Mapstring, Object();public static getContext(): GlobalContext {if (!GlobalContext.instance) {GlobalContext.instance new GlobalContext();}return GlobalContext.instance;}getObject(value: string): Object | undefined {return this._objects.get(value);}setObject(key: string, objectClass: Object): void {this._objects.set(key, objectClass);}
}// 获取所有处于连接状态的网络列表
connection.getAllNets().then((data: connection.NetHandle[]) {console.info(Succeeded to get data: JSON.stringify(data));if (data) {GlobalContext.getContext().netList data;}
});根据数据网络查询网络的能力信息及连接信息 声明接口调用所需要的权限ohos.permission.GET_NETWORK_INFO。 此权限级别为normal在申请权限前请保证符合[权限使用的基本原则] 从kit.NetworkKit中导入connection命名空间。 通过调用getDefaultNet方法获取默认的数据网络(NetHandle)或者通过调用getAllNets方法获取所有处于连接状态的网络列表(Array)。 调用getNetCapabilities方法获取NetHandle对应网络的能力信息。能力信息包含了网络类型(蜂窝网络、Wi-Fi网络、以太网网络等)、网络具体能力等网络信息。 调用getConnectionProperties方法获取NetHandle对应网络的连接信息。
import { connection } from kit.NetworkKit;
import { BusinessError } from kit.BasicServicesKit;// 构造单例对象
export class GlobalContext {public netList: connection.NetHandle[] [];public netHandle: connection.NetHandle|null null;private constructor() {}private static instance: GlobalContext;private _objects new Mapstring, Object();public static getContext(): GlobalContext {if (!GlobalContext.instance) {GlobalContext.instance new GlobalContext();}return GlobalContext.instance;}getObject(value: string): Object | undefined {return this._objects.get(value);}setObject(key: string, objectClass: Object): void {this._objects.set(key, objectClass);}
}// 调用getDefaultNet方法获取默认的数据网络(NetHandle)
connection.getDefaultNet().then((data:connection.NetHandle) {if (data.netId 0) {// 当前无默认网络时获取的netHandler的netid为0,属于异常情况需要额外处理return;}if (data) {console.info(getDefaultNet get data: JSON.stringify(data));GlobalContext.getContext().netHandle data;// 获取netHandle对应网络的能力信息。能力信息包含了网络类型、网络具体能力等网络信息connection.getNetCapabilities(GlobalContext.getContext().netHandle).then((data: connection.NetCapabilities) {console.info(getNetCapabilities get data: JSON.stringify(data));// 获取网络类型(bearerTypes)let bearerTypes: Setnumber new Set(data.bearerTypes);let bearerTypesNum Array.from(bearerTypes.values());for (let item of bearerTypesNum) {if (item 0) {// 蜂窝网console.log(JSON.stringify(BEARER_CELLULAR));} else if (item 1) {// Wi-Fi网络console.log(JSON.stringify(BEARER_WIFI));} else if (item 3) {// 以太网网络console.log(JSON.stringify(BEARER_ETHERNET));}}// 获取网络具体能力(networkCap)let itemNumber : Setnumber new Set(data.networkCap);let dataNumber Array.from(itemNumber.values());for (let item of dataNumber) {if (item 0) {// 表示网络可以访问运营商的MMSCMultimedia Message Service多媒体短信服务发送和接收彩信console.log(JSON.stringify(NET_CAPABILITY_MMS));} else if (item 11) {// 表示网络流量未被计费console.log(JSON.stringify(NET_CAPABILITY_NOT_METERED));} else if (item 12) {// 表示该网络应具有访问Internet的能力该能力由网络提供者设置console.log(JSON.stringify(NET_CAPABILITY_INTERNET));} else if (item 15) {// 表示网络不使用VPNVirtual Private Network虚拟专用网络console.log(JSON.stringify(NET_CAPABILITY_NOT_VPN));} else if (item 16) {// 表示该网络访问Internet的能力被网络管理成功验证该能力由网络管理模块设置console.log(JSON.stringify(NET_CAPABILITY_VALIDATED));}}})}
})// 获取netHandle对应网络的连接信息。连接信息包含了链路信息、路由信息等
connection.getConnectionProperties(GlobalContext.getContext().netHandle).then((data: connection.ConnectionProperties) {console.info(getConnectionProperties get data: JSON.stringify(data));
})// 调用getAllNets,获取所有处于连接状态的网络列表(ArrayNetHandle)
connection.getAllNets().then((data: connection.NetHandle[]) {console.info(getAllNets get data: JSON.stringify(data));if (data) {GlobalContext.getContext().netList data;let itemNumber : Setconnection.NetHandle new Set(GlobalContext.getContext().netList);let dataNumber Array.from(itemNumber.values());for (let item of dataNumber) {// 循环获取网络列表每个netHandle对应网络的能力信息connection.getNetCapabilities(item).then((data: connection.NetCapabilities) {console.info(getNetCapabilities get data: JSON.stringify(data));})// 循环获取网络列表每个netHandle对应的网络的连接信息connection.getConnectionProperties(item).then((data: connection.ConnectionProperties) {console.info(getConnectionProperties get data: JSON.stringify(data));})}}
})使用对应网络解析域名获取所有IP 声明接口调用所需要的权限ohos.permission.INTERNET 此权限级别为normal在申请权限前请保证符合[权限使用的基本原则] 从kit.NetworkKit中导入connection命名空间。 调用getAddressesByName方法使用默认网络解析主机名以获取所有IP地址。
// 引入包名
import { connection } from kit.NetworkKit;
import { BusinessError } from kit.BasicServicesKit;// 使用默认网络解析主机名以获取所有IP地址
connection.getAddressesByName(xxxx).then((data: connection.NetAddress[]) {console.info(Succeeded to get data: JSON.stringify(data));
});最后呢
很多开发朋友不知道需要学习那些鸿蒙技术鸿蒙开发岗位需要掌握那些核心技术点为此鸿蒙的开发学习必须要系统性的进行。
而网上有关鸿蒙的开发资料非常的少假如你想学好鸿蒙的应用开发与系统底层开发。你可以参考这份资料少走很多弯路节省没必要的麻烦。由两位前阿里高级研发工程师联合打造的《鸿蒙NEXT星河版OpenHarmony开发文档》里面内容包含了ArkTS、ArkUI开发组件、Stage模型、多端部署、分布式应用开发、音频、视频、WebGL、OpenHarmony多媒体技术、Napi组件、OpenHarmony内核、Harmony南向开发、鸿蒙项目实战等等鸿蒙Harmony NEXT技术知识点
如果你是一名Android、Java、前端等等开发人员想要转入鸿蒙方向发展。可以直接领取这份资料辅助你的学习。下面是鸿蒙开发的学习路线图。 针对鸿蒙成长路线打造的鸿蒙学习文档。话不多说我们直接看详细鸿蒙OpenHarmony 手册共计1236页与鸿蒙OpenHarmony 开发入门视频帮助大家在技术的道路上更进一步。
《鸿蒙 (OpenHarmony)开发学习视频》《鸿蒙生态应用开发V2.0白皮书》《鸿蒙 (OpenHarmony)开发基础到实战手册》OpenHarmony北向、南向开发环境搭建《鸿蒙开发基础》《鸿蒙开发进阶》《鸿蒙开发实战》 总结
鸿蒙—作为国家主力推送的国产操作系统。部分的高校已经取消了安卓课程从而开设鸿蒙课程企业纷纷跟进启动了鸿蒙研发。
并且鸿蒙是完全具备无与伦比的机遇和潜力的预计到年底将有 5,000 款的应用完成原生鸿蒙开发未来将会支持 50 万款的应用。那么这么多的应用需要开发也就意味着需要有更多的鸿蒙人才。鸿蒙开发工程师也将会迎来爆发式的增长学习鸿蒙势在必行 自↓↓↓拿
- 上一篇: 网站搜索引擎推广方案趣丁号友情链接
- 下一篇: 网站搜索引擎优化方案范文房内设计
相关文章
-
网站搜索引擎推广方案趣丁号友情链接
网站搜索引擎推广方案趣丁号友情链接
- 技术栈
- 2026年06月19日
-
网站搜索引擎建设网站东莞公司
网站搜索引擎建设网站东莞公司
- 技术栈
- 2026年06月19日
-
网站搜索推广销售代运营公司怎么找客户
网站搜索推广销售代运营公司怎么找客户
- 技术栈
- 2026年06月19日
-
网站搜索引擎优化方案范文房内设计
网站搜索引擎优化方案范文房内设计
- 技术栈
- 2026年06月19日
-
网站搜索优化技巧中国建设监理工程协会网站
网站搜索优化技巧中国建设监理工程协会网站
- 技术栈
- 2026年06月19日
-
网站搜索怎么做网站数据丢失了做数据恢复需多久
网站搜索怎么做网站数据丢失了做数据恢复需多久
- 技术栈
- 2026年06月19日
