1e41f4b71Sopenharmony_ci# @system.network (网络状态) 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ci> **说明:** 4e41f4b71Sopenharmony_ci> - 本模块首批接口从API version 3开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 5e41f4b71Sopenharmony_ci> 6e41f4b71Sopenharmony_ci> - 从API Version 8 开始,该接口不再维护,推荐使用新接口['@ohos.net.connection'](js-apis-net-connection.md)。 7e41f4b71Sopenharmony_ci 8e41f4b71Sopenharmony_ci## 导入模块 9e41f4b71Sopenharmony_ci 10e41f4b71Sopenharmony_ci 11e41f4b71Sopenharmony_ci``` 12e41f4b71Sopenharmony_ciimport network from '@system.network'; 13e41f4b71Sopenharmony_ci``` 14e41f4b71Sopenharmony_ci 15e41f4b71Sopenharmony_ci 16e41f4b71Sopenharmony_ci## 权限列表 17e41f4b71Sopenharmony_ci 18e41f4b71Sopenharmony_ciohos.permission.GET_WIFI_INFO 19e41f4b71Sopenharmony_ci 20e41f4b71Sopenharmony_ciohos.permission.GET_NETWORK_INFO 21e41f4b71Sopenharmony_ci 22e41f4b71Sopenharmony_ci 23e41f4b71Sopenharmony_ci## network.getType<sup>3+</sup> 24e41f4b71Sopenharmony_ci 25e41f4b71Sopenharmony_cigetType(options?: {<br> 26e41f4b71Sopenharmony_ci success?: (data: NetworkResponse) => void;<br> 27e41f4b71Sopenharmony_ci fail?: (data: any, code: number) => void;<br> 28e41f4b71Sopenharmony_ci complete?: () => void;<br> 29e41f4b71Sopenharmony_ci}): void 30e41f4b71Sopenharmony_ci 31e41f4b71Sopenharmony_ci获取当前设备的网络类型。 32e41f4b71Sopenharmony_ci 33e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Communication.NetManager.Core 34e41f4b71Sopenharmony_ci 35e41f4b71Sopenharmony_ci**参数:** 36e41f4b71Sopenharmony_ci 37e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 38e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 39e41f4b71Sopenharmony_ci| success | Function | 否 | 接口调用成功的回调函数,返回值为[NetworkResponse](#networkresponse3) | 40e41f4b71Sopenharmony_ci| fail | Function | 否 | 接口调用失败的回调函数。 | 41e41f4b71Sopenharmony_ci| complete | Function | 否 | 接口调用结束的回调函数。 | 42e41f4b71Sopenharmony_ci 43e41f4b71Sopenharmony_cifail返回值: 44e41f4b71Sopenharmony_ci 45e41f4b71Sopenharmony_ci| 错误码 | 说明 | 46e41f4b71Sopenharmony_ci| -------- | -------- | 47e41f4b71Sopenharmony_ci| 602 | 当前权限未声明。 | 48e41f4b71Sopenharmony_ci 49e41f4b71Sopenharmony_ci**示例:** 50e41f4b71Sopenharmony_ci 51e41f4b71Sopenharmony_ci``` 52e41f4b71Sopenharmony_ciexport default class Network { 53e41f4b71Sopenharmony_ci getType() { 54e41f4b71Sopenharmony_ci network.getType({ 55e41f4b71Sopenharmony_ci success: (data) => { 56e41f4b71Sopenharmony_ci console.log('success get network type:' + data.type); 57e41f4b71Sopenharmony_ci } 58e41f4b71Sopenharmony_ci }); 59e41f4b71Sopenharmony_ci } 60e41f4b71Sopenharmony_ci} 61e41f4b71Sopenharmony_ci``` 62e41f4b71Sopenharmony_ci 63e41f4b71Sopenharmony_ci 64e41f4b71Sopenharmony_ci## network.subscribe<sup>3+</sup> 65e41f4b71Sopenharmony_ci 66e41f4b71Sopenharmony_cisubscribe(options?:{<br> 67e41f4b71Sopenharmony_ci success?: (data: NetworkResponse) => void;<br> 68e41f4b71Sopenharmony_ci fail?: (data: any, code: number) => void;<br> 69e41f4b71Sopenharmony_ci }): void 70e41f4b71Sopenharmony_ci 71e41f4b71Sopenharmony_ci订阅当前设备的网络连接状态。如果多次调用,会覆盖前一次调用。 72e41f4b71Sopenharmony_ci 73e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Communication.NetManager.Core 74e41f4b71Sopenharmony_ci 75e41f4b71Sopenharmony_ci**参数:** 76e41f4b71Sopenharmony_ci 77e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 78e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 79e41f4b71Sopenharmony_ci| success | Function | 否 | 网络发生变化的回调函数,返回值为[NetworkResponse](#networkresponse3) | 80e41f4b71Sopenharmony_ci| fail | Function | 否 | 接口调用失败的回调函数。 | 81e41f4b71Sopenharmony_ci 82e41f4b71Sopenharmony_cifail返回值: 83e41f4b71Sopenharmony_ci 84e41f4b71Sopenharmony_ci| 错误码 | 说明 | 85e41f4b71Sopenharmony_ci| -------- | -------- | 86e41f4b71Sopenharmony_ci| 602 | 当前权限未声明。 | 87e41f4b71Sopenharmony_ci| 200 | 订阅失败。 | 88e41f4b71Sopenharmony_ci 89e41f4b71Sopenharmony_ci**示例:** 90e41f4b71Sopenharmony_ci 91e41f4b71Sopenharmony_ci``` 92e41f4b71Sopenharmony_ciexport default class Network { 93e41f4b71Sopenharmony_ci subscribe() { 94e41f4b71Sopenharmony_ci network.subscribe({ 95e41f4b71Sopenharmony_ci success: (data) => { 96e41f4b71Sopenharmony_ci console.log('success get network type:' + data.type); 97e41f4b71Sopenharmony_ci } 98e41f4b71Sopenharmony_ci }); 99e41f4b71Sopenharmony_ci } 100e41f4b71Sopenharmony_ci} 101e41f4b71Sopenharmony_ci``` 102e41f4b71Sopenharmony_ci 103e41f4b71Sopenharmony_ci 104e41f4b71Sopenharmony_ci## network.unsubscribe<sup>3+</sup> 105e41f4b71Sopenharmony_ci 106e41f4b71Sopenharmony_ciunsubscribe(): void 107e41f4b71Sopenharmony_ci 108e41f4b71Sopenharmony_ci取消订阅设备的网络连接状态。 109e41f4b71Sopenharmony_ci 110e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Communication.NetManager.Core 111e41f4b71Sopenharmony_ci 112e41f4b71Sopenharmony_ci**示例:** 113e41f4b71Sopenharmony_ci 114e41f4b71Sopenharmony_ci``` 115e41f4b71Sopenharmony_ciimport network from '@system.network'; 116e41f4b71Sopenharmony_ci 117e41f4b71Sopenharmony_cinetwork.unsubscribe(); 118e41f4b71Sopenharmony_ci``` 119e41f4b71Sopenharmony_ci 120e41f4b71Sopenharmony_ci 121e41f4b71Sopenharmony_ci## NetworkResponse<sup>3+</sup> 122e41f4b71Sopenharmony_ci 123e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Communication.NetManager.Core 124e41f4b71Sopenharmony_ci 125e41f4b71Sopenharmony_ci| 名称 | 类型 | 必填 | 说明 | 126e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 127e41f4b71Sopenharmony_ci| metered | boolean | 否 |是否按照流量计费。 | 128e41f4b71Sopenharmony_ci| type | string | 是|网络类型,可能的值有2g,3g,4g,5g,wifi,none等。 | 129