# @ohos.wifi (WLAN)(系统接å£ï¼‰ 该模å—主è¦æä¾›WLAN基础功能ã€P2P(peer-to-peer)功能和WLAN消æ¯é€šçŸ¥çš„相应æœåŠ¡ï¼Œè®©åº”用å¯ä»¥é€šè¿‡WLAN和其他设备互è”互通。 > **说明:** > > 本模å—首批接å£ä»ŽAPI version 6开始支æŒã€‚åŽç»ç‰ˆæœ¬çš„新增接å£ï¼Œé‡‡ç”¨ä¸Šè§’æ ‡å•ç‹¬æ ‡è®°æŽ¥å£çš„起始版本。 > 当å‰é¡µé¢ä»…包å«æœ¬æ¨¡å—的系统接å£ï¼Œå…¶ä»–公开接å£å‚è§[@ohos.wifi (WLAN)](js-apis-wifi.md) > 从API Version 9 开始,该接å£ä¸å†ç»´æŠ¤ï¼ŒæŽ¨è使用[`@ohos.wifiManager (WLAN)`](js-apis-wifiManager-sys.md)ç‰ç›¸å…³æŽ¥å£ã€‚ ## å¯¼å…¥æ¨¡å— ```ts import wifi from '@ohos.wifi'; ``` ## wifi.enableWifi enableWifi(): boolean 使能WLAN。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.SET_WIFI_INFO å’Œ ohos.permission.MANAGE_WIFI_CONNECTION,仅系统应用å¯ç”¨ã€‚ **系统能力:** SystemCapability.Communication.WiFi.STA **返回值:** | **类型** | **说明** | | -------- | -------- | | boolean | true:æ“作æˆåŠŸï¼Œ false:æ“作失败。| **示例:** ```ts import wifi from '@ohos.wifi'; try { wifi.enableWifi(); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.disableWifi disableWifi(): boolean 去使能WLAN。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.SET_WIFI_INFO å’Œ ohos.permission.MANAGE_WIFI_CONNECTION,仅系统应用å¯ç”¨ã€‚ **系统能力:** SystemCapability.Communication.WiFi.STA **返回值:** | **类型** | **说明** | | -------- | -------- | | boolean | true:æ“作æˆåŠŸï¼Œ false:æ“作失败。| **示例:** ```ts import wifi from '@ohos.wifi'; try { wifi.disableWifi(); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.addDeviceConfig addDeviceConfig(config: WifiDeviceConfig): Promise<number> æ·»åŠ ç½‘ç»œé…置,使用Promise异æ¥å›žè°ƒã€‚ **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.SET_WIFI_INFO å’Œ ohos.permission.SET_WIFI_CONFIG **系统能力:** SystemCapability.Communication.WiFi.STA **å‚数:** | **å‚æ•°å** | **类型** | **å¿…å¡«** | **说明** | | -------- | -------- | -------- | -------- | | config | [WifiDeviceConfig](#wifideviceconfig) | 是 | WLANé…置信æ¯ã€‚ | **返回值:** | **类型** | **说明** | | -------- | -------- | | Promise<number> | Promiseå¯¹è±¡ã€‚è¿”å›žæ·»åŠ çš„ç½‘ç»œé…ç½®ID,如果值为-1è¡¨ç¤ºæ·»åŠ å¤±è´¥ã€‚ | **示例:** ```ts import wifi from '@ohos.wifi'; try { let config:wifi.WifiDeviceConfig = { ssid : "****", bssid: "****", preSharedKey: "****", isHiddenSsid: false, securityType: 0, creatorUid: 0, disableReason: 0, netId: 0, randomMacType: 0, randomMacAddr: "****", ipType: 0, staticIp: { ipAddress: 0, gateway: 0, dnsServers: [], domains: [] } } wifi.addDeviceConfig(config).then(result => { console.info("result:" + JSON.stringify(result)); }); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## WifiDeviceConfig WLANé…置信æ¯ã€‚ **系统能力:** SystemCapability.Communication.WiFi.STA | **å称** | **类型** | **å¯è¯»** | **å¯å†™** | **说明** | | -------- | -------- | -------- | -------- | -------- | | creatorUid | number | 是 | å¦ | 创建用户的ID。 <br /> **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ | | disableReason | number | 是 | å¦ | ç¦ç”¨åŽŸå› 。 <br /> **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ | | netId | number | 是 | å¦ | 分é…的网络ID。 <br /> **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ | | randomMacType | number | 是 | å¦ | éšæœºMAC类型。 <br /> **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ | | randomMacAddr | string | 是 | å¦ | éšæœºMAC地å€ã€‚ <br /> **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ | | ipType | [IpType](#iptype7) | 是 | å¦ | IP地å€ç±»åž‹ã€‚ <br /> **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ | | staticIp | [IpConfig](#ipconfig7) | 是 | å¦ | é™æ€IPé…置信æ¯ã€‚ <br /> **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ | ## IpType<sup>7+</sup> 表示IP类型的枚举。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **系统能力:** SystemCapability.Communication.WiFi.STA | å称 | 值 | 说明 | | -------- | -------- | -------- | | STATIC | 0 | é™æ€IP。 | | DHCP | 1 | 通过DHCP获å–。 | | UNKNOWN | 2 | 未指定。 | ## IpConfig<sup>7+</sup> IPé…置信æ¯ã€‚ **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **系统能力:** SystemCapability.Communication.WiFi.STA | **å称** | **类型** | **å¯è¯»** | **å¯å†™** | **说明** | | -------- | -------- | -------- | -------- | -------- | | ipAddress | number | 是 | å¦ | IP地å€ã€‚ | | gateway | number | 是 | å¦ | 网关。 | | dnsServers | number[] | 是 | å¦ | DNSæœåŠ¡å™¨ã€‚ | | domains | Array<string> | 是 | å¦ | 域信æ¯ã€‚ | ## wifi.addDeviceConfig addDeviceConfig(config: WifiDeviceConfig, callback: AsyncCallback<number>): void æ·»åŠ ç½‘ç»œé…置,使用callback异æ¥å›žè°ƒã€‚ **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.SET_WIFI_INFO å’Œ ohos.permission.SET_WIFI_CONFIG **系统能力:** SystemCapability.Communication.WiFi.STA **å‚数:** | **å‚æ•°å** | **类型** | **å¿…å¡«** | **说明** | | -------- | -------- | -------- | -------- | | config | [WifiDeviceConfig](#wifideviceconfig) | 是 | WLANé…置信æ¯ã€‚ | | callback | AsyncCallback<number> | 是 | 回调函数。当æ“作æˆåŠŸæ—¶ï¼Œerr为0,dataä¸ºæ·»åŠ çš„ç½‘ç»œé…ç½®ID,如果data值为-1ï¼Œè¡¨ç¤ºæ·»åŠ å¤±è´¥ã€‚å½“error为éž0,表示处ç†å‡ºçŽ°é”™è¯¯ã€‚ | **示例:** ```ts import wifi from '@ohos.wifi'; try { let config:wifi.WifiDeviceConfig = { ssid : "****", bssid: "****", preSharedKey: "****", isHiddenSsid: false, securityType: 0, creatorUid: 0, disableReason: 0, netId: 0, randomMacType: 0, randomMacAddr: "****", ipType: 0, staticIp: { ipAddress: 0, gateway: 0, dnsServers: [], domains: [] } } wifi.addDeviceConfig(config,(error,result) => { console.info("result:" + JSON.stringify(result)); }); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.connectToNetwork connectToNetwork(networkId: number): boolean 连接到指定网络。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.MANAGE_WIFI_CONNECTION,仅系统应用å¯ç”¨ã€‚ **系统能力:** SystemCapability.Communication.WiFi.STA **å‚数:** | **å‚æ•°å** | **类型** | **å¿…å¡«** | **说明** | | -------- | -------- | -------- | -------- | | networkId | number | 是 | 待连接的网络é…ç½®ID。 | **返回值:** | **类型** | **说明** | | -------- | -------- | | boolean | true:æ“作æˆåŠŸï¼Œ false:æ“作失败。 | **示例:** ```ts import wifi from '@ohos.wifi'; try { let networkId = 0; wifi.connectToNetwork(networkId); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.connectToDevice connectToDevice(config: WifiDeviceConfig): boolean 连接到指定网络。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.SET_WIFI_INFO å’Œ ohos.permission.SET_WIFI_CONFIG å’Œ ohos.permission.MANAGE_WIFI_CONNECTION,仅系统应用å¯ç”¨ã€‚ **系统能力:** SystemCapability.Communication.WiFi.STA **å‚数:** | **å‚æ•°å** | **类型** | **å¿…å¡«** | **说明** | | -------- | -------- | -------- | -------- | | config | [WifiDeviceConfig](#wifideviceconfig) | 是 | WLANé…置信æ¯ã€‚ | **返回值:** | **类型** | **说明** | | -------- | -------- | | boolean | true:æ“作æˆåŠŸï¼Œ false:æ“作失败。 | **示例:** ```ts import wifi from '@ohos.wifi'; try { let config:wifi.WifiDeviceConfig = { ssid : "****", bssid: "****", preSharedKey: "****", isHiddenSsid: false, securityType: 3, creatorUid: 0, disableReason: 0, netId: 0, randomMacType: 0, randomMacAddr: "****", ipType: 0, staticIp: { ipAddress: 0, gateway: 0, dnsServers: [], domains: [] } } wifi.connectToDevice(config); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.disconnect disconnect(): boolean æ–开连接的网络。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.SET_WIFI_INFO å’Œ ohos.permission.MANAGE_WIFI_CONNECTION,仅系统应用å¯ç”¨ã€‚ **系统能力:** SystemCapability.Communication.WiFi.STA **返回值:** | **类型** | **说明** | | -------- | -------- | | boolean | true:æ“作æˆåŠŸï¼Œ false:æ“作失败。 | **示例:** ```ts import wifi from '@ohos.wifi'; try { wifi.disconnect(); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## WifiLinkedInfo æä¾›WLAN连接的相关信æ¯ã€‚ **系统能力:** SystemCapability.Communication.WiFi.STA | å称 | 类型 | å¯è¯» | å¯å†™ | 说明 | | -------- | -------- | -------- | -------- | -------- | | networkId | number | 是 | å¦ | 网络é…ç½®ID。 <br /> **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ | | chload | number | 是 | å¦ | 连接负载,值越大表示负载约高。 <br /> **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ | | snr | number | 是 | å¦ | 信噪比。 <br /> **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ | | suppState | [SuppState](#suppstate) | 是 | å¦ | 请求状æ€ã€‚ <br /> **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ | ## SuppState 表示请求状æ€çš„枚举。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **系统能力:** SystemCapability.Communication.WiFi.STA | å称 | 值 | 说明 | | -------- | -------- | -------- | | DISCONNECTED | 0 | å·²æ–开。 | | INTERFACE_DISABLED | 1 | 接å£ç¦ç”¨ã€‚ | | INACTIVE | 2 | 未激活。 | | SCANNING | 3 | 扫æä¸ã€‚ | | AUTHENTICATING | 4 | 认è¯ä¸ã€‚ | | ASSOCIATING | 5 | å…³è”ä¸ã€‚ | | ASSOCIATED | 6 | 已关è”。 | | FOUR_WAY_HANDSHAKE | 7 | 四次æ¡æ‰‹ã€‚ | | GROUP_HANDSHAKE | 8 | 组æ¡æ‰‹ã€‚ | | COMPLETED | 9 | 所有认è¯å·²å®Œæˆã€‚ | | UNINITIALIZED | 10 | 连接建立失败。 | | INVALID | 11 | æ— æ•ˆå€¼ã€‚ | ## wifi.getSupportedFeatures<sup>7+</sup> getSupportedFeatures(): number 查询设备支æŒçš„特性。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.GET_WIFI_INFO **系统能力:** SystemCapability.Communication.WiFi.Core **返回值:** | **类型** | **说明** | | -------- | -------- | | number | 支æŒçš„特性值。 | **特性ID值枚举:** | 枚举值 | 说明 | | -------- | -------- | | 0x0001 | 基础结构模å¼ç‰¹æ€§ã€‚ | | 0x0002 | 5 GHz带宽特性。 | | 0x0004 | GAS/ANQP特性。 | | 0x0008 | Wifi-Direct特性。 | | 0x0010 | Soft AP特性。 | | 0x0040 | Wi-Fi AWare组网特性。 | | 0x8000 | AP STAå…±å˜ç‰¹æ€§ã€‚ | | 0x8000000 | WPA3-Personal SAE特性。 | | 0x10000000 | WPA3-Enterprise Suite-B | | 0x20000000 | 增强开放特性。 | ## wifi.getDeviceMacAddress<sup>7+</sup> getDeviceMacAddress(): string[] 获å–设备的MAC地å€ã€‚ **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.GET_WIFI_LOCAL_MAC å’Œ ohos.permission.GET_WIFI_INFO,仅系统应用å¯ç”¨ã€‚ **系统能力:** SystemCapability.Communication.WiFi.STA **返回值:** | **类型** | **说明** | | -------- | -------- | | string[] | MAC地å€ã€‚ | **示例:** ```ts import wifi from '@ohos.wifi'; try { let ret = wifi.getDeviceMacAddress(); console.info("deviceMacAddress:" + JSON.stringify(ret)); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.reassociate<sup>7+</sup> reassociate(): boolean é‡æ–°å…³è”网络。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.SET_WIFI_INFO å’Œ ohos.permission.MANAGE_WIFI_CONNECTION,仅系统应用å¯ç”¨ã€‚ **系统能力:** SystemCapability.Communication.WiFi.STA **返回值:** | **类型** | **说明** | | -------- | -------- | | boolean | true:æ“作æˆåŠŸï¼Œ false:æ“作失败。 | **示例:** ```ts import wifi from '@ohos.wifi'; try { wifi.reassociate(); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.reconnect<sup>7+</sup> reconnect(): boolean é‡æ–°è¿žæŽ¥ç½‘络。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.SET_WIFI_INFO å’Œ ohos.permission.MANAGE_WIFI_CONNECTION,仅系统应用å¯ç”¨ã€‚ **系统能力:** SystemCapability.Communication.WiFi.STA **返回值:** | **类型** | **说明** | | -------- | -------- | | boolean | true:æ“作æˆåŠŸï¼Œ false:æ“作失败。 | **示例:** ```ts import wifi from '@ohos.wifi'; try { wifi.reconnect(); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.getDeviceConfigs<sup>7+</sup> getDeviceConfigs(): Array<[WifiDeviceConfig](#wifideviceconfig)> 获å–网络é…置。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.GET_WIFI_INFO å’Œ ohos.permission.LOCATION å’Œ ohos.permission.GET_WIFI_CONFIG **系统能力:** SystemCapability.Communication.WiFi.STA **返回值:** | **类型** | **说明** | | -------- | -------- | | Array<[WifiDeviceConfig](#wifideviceconfig)> | 网络é…置信æ¯çš„数组。 | **示例:** ```ts import wifi from '@ohos.wifi'; try { let configs = wifi.getDeviceConfigs(); console.info("configs:" + JSON.stringify(configs)); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.updateNetwork<sup>7+</sup> updateNetwork(config: WifiDeviceConfig): number 更新网络é…置。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.SET_WIFI_INFO å’Œ ohos.permission.SET_WIFI_CONFIG **系统能力:** SystemCapability.Communication.WiFi.STA **å‚数:** | **å‚æ•°å** | **类型** | **å¿…å¡«** | **说明** | | -------- | -------- | -------- | -------- | | config | [WifiDeviceConfig](#wifideviceconfig) | 是 | WLANé…置信æ¯ã€‚ | **返回值:** | **类型** | **说明** | | -------- | -------- | | number | 返回更新的网络é…ç½®ID,如果值为-1表示更新失败。 | **示例:** ```ts import wifi from '@ohos.wifi'; try { let config:wifi.WifiDeviceConfig = { ssid : "****", bssid: "****", preSharedKey: "****", isHiddenSsid: false, securityType: 3, creatorUid: 0, disableReason: 0, netId: 0, randomMacType: 0, randomMacAddr: "****", ipType: 0, staticIp: { ipAddress: 0, gateway: 0, dnsServers: [], domains: [] } } let ret = wifi.updateNetwork(config); console.error("ret:" + ret); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.disableNetwork<sup>7+</sup> disableNetwork(netId: number): boolean 去使能网络é…置。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.SET_WIFI_INFO å’Œ ohos.permission.MANAGE_WIFI_CONNECTION,仅系统应用å¯ç”¨ã€‚ **系统能力:** SystemCapability.Communication.WiFi.STA **å‚数:** | **å‚æ•°å** | **类型** | **å¿…å¡«** | **说明** | | -------- | -------- | -------- | -------- | | netId | number | 是 | 网络é…ç½®ID。 | **返回值:** | **类型** | **说明** | | -------- | -------- | | boolean | true:æ“作æˆåŠŸï¼Œ false:æ“作失败。 | **示例:** ```ts import wifi from '@ohos.wifi'; try { let netId = 0; wifi.disableNetwork(netId); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.removeAllNetwork<sup>7+</sup> removeAllNetwork(): boolean 移除所有网络é…置。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.SET_WIFI_INFO å’Œ ohos.permission.MANAGE_WIFI_CONNECTION,仅系统应用å¯ç”¨ã€‚ **系统能力:** SystemCapability.Communication.WiFi.STA **返回值:** | **类型** | **说明** | | -------- | -------- | | boolean | true:æ“作æˆåŠŸï¼Œ false:æ“作失败。 | **示例:** ```ts import wifi from '@ohos.wifi'; try { wifi.removeAllNetwork(); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.removeDevice<sup>7+</sup> removeDevice(id: number): boolean 移除指定的网络é…置。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.SET_WIFI_INFO å’Œ ohos.permission.MANAGE_WIFI_CONNECTION,仅系统应用å¯ç”¨ã€‚ **系统能力:** SystemCapability.Communication.WiFi.STA **å‚数:** | **å‚æ•°å** | **类型** | **å¿…å¡«** | **说明** | | -------- | -------- | -------- | -------- | | id | number | 是 | 网络é…ç½®ID。 | **返回值:** | **类型** | **说明** | | -------- | -------- | | boolean | true:æ“作æˆåŠŸï¼Œ false:æ“作失败。 | **示例:** ```ts import wifi from '@ohos.wifi'; try { let id = 0; wifi.removeDevice(id); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.enableHotspot<sup>7+</sup> enableHotspot(): boolean 使能çƒç‚¹ã€‚ **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.MANAGE_WIFI_HOTSPOT,仅系统应用å¯ç”¨ã€‚ **系统能力:** SystemCapability.Communication.WiFi.AP.Core **返回值:** | **类型** | **说明** | | -------- | -------- | | boolean | true:æ“作æˆåŠŸï¼Œ false:æ“作失败。| **示例:** ```ts import wifi from '@ohos.wifi'; try { wifi.enableHotspot(); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.disableHotspot<sup>7+</sup> disableHotspot(): boolean 去使能çƒç‚¹ã€‚ **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.MANAGE_WIFI_HOTSPOT,仅系统应用å¯ç”¨ã€‚ **系统能力:** SystemCapability.Communication.WiFi.AP.Core **返回值:** | **类型** | **说明** | | -------- | -------- | | boolean | true:æ“作æˆåŠŸï¼Œ false:æ“作失败。| **示例:** ```ts import wifi from '@ohos.wifi'; try { wifi.disableHotspot(); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.isHotspotDualBandSupported<sup>7+</sup> isHotspotDualBandSupported(): boolean çƒç‚¹æ˜¯å¦æ”¯æŒåŒé¢‘。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.GET_WIFI_INFO å’Œ ohos.permission.MANAGE_WIFI_HOTSPOT,仅系统应用å¯ç”¨ã€‚ **系统能力:** SystemCapability.Communication.WiFi.AP.Core **返回值:** | **类型** | **说明** | | -------- | -------- | | boolean | true:支æŒï¼Œ false:ä¸æ”¯æŒã€‚| **示例:** ```ts import wifi from '@ohos.wifi'; try { let ret = wifi.isHotspotDualBandSupported(); console.info("result:" + ret); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.isHotspotActive<sup>7+</sup> isHotspotActive(): boolean çƒç‚¹æ˜¯å¦å·²ä½¿èƒ½ã€‚ **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.GET_WIFI_INFO **系统能力:** SystemCapability.Communication.WiFi.AP.Core **返回值:** | **类型** | **说明** | | -------- | -------- | | boolean | true:已使能, false:未使能。| **示例:** ```ts import wifi from '@ohos.wifi'; try { let ret = wifi.isHotspotActive(); console.info("result:" + ret); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.setHotspotConfig<sup>7+</sup> setHotspotConfig(config: HotspotConfig): boolean 设置çƒç‚¹é…置信æ¯ã€‚ **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.SET_WIFI_INFO å’Œ ohos.permission.GET_WIFI_CONFIG **系统能力:** SystemCapability.Communication.WiFi.AP.Core **å‚数:** | **å‚æ•°å** | **类型** | **å¿…å¡«** | **说明** | | -------- | -------- | -------- | -------- | | config | [HotspotConfig](#hotspotconfig7) | 是 | çƒç‚¹é…置信æ¯ã€‚ | **返回值:** | **类型** | **说明** | | -------- | -------- | | boolean | true:æ“作æˆåŠŸï¼Œ false:æ“作失败。 | **示例:** ```ts import wifi from '@ohos.wifi'; try { let config:wifi.HotspotConfig = { ssid: "****", securityType: 3, band: 0, preSharedKey: "****", maxConn: 0 } let ret = wifi.setHotspotConfig(config); console.info("result:" + ret); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## HotspotConfig<sup>7+</sup> çƒç‚¹é…置信æ¯ã€‚ **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **系统能力:** SystemCapability.Communication.WiFi.AP.Core | **å称** | **类型** | **å¯è¯»** | **å¯å†™** | **说明** | | -------- | -------- | -------- | -------- | -------- | | ssid | string | 是 | å¦ | çƒç‚¹çš„SSID,编ç æ ¼å¼ä¸ºUTF-8。 | | securityType | [WifiSecurityType](js-apis-wifi.md#wifisecuritytype) | 是 | å¦ | åŠ å¯†ç±»åž‹ã€‚ | | band | number | 是 | å¦ | çƒç‚¹çš„带宽。1: 2.4G, 2: 5G, 3: åŒæ¨¡é¢‘段 | | preSharedKey | string | 是 | å¦ | çƒç‚¹çš„密钥。 | | maxConn | number | 是 | å¦ | 最大设备连接数。 | ## wifi.getHotspotConfig<sup>7+</sup> getHotspotConfig(): HotspotConfig 获å–çƒç‚¹é…置信æ¯ã€‚ **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.GET_WIFI_INFO å’Œ ohos.permission.GET_WIFI_CONFIG **系统能力:** SystemCapability.Communication.WiFi.AP.Core **返回值:** | **类型** | **说明** | | -------- | -------- | | [HotspotConfig](#hotspotconfig7) | çƒç‚¹çš„é…置信æ¯ã€‚ | **示例:** ```ts import wifi from '@ohos.wifi'; try { let config = wifi.getHotspotConfig(); console.info("result:" + JSON.stringify(config)); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.getStations<sup>7+</sup> getStations(): Array<[StationInfo](#stationinfo7)> 获å–连接的设备。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.GET_WIFI_INFO å’Œ ohos.permission.LOCATION å’Œ ohos.permission.MANAGE_WIFI_HOTSPOT,仅系统应用å¯ç”¨ã€‚ **系统能力:** SystemCapability.Communication.WiFi.AP.Core **返回值:** | **类型** | **说明** | | -------- | -------- | | Array<[StationInfo](#stationinfo7)> | 连接的设备数组。 | **示例:** ```ts import wifi from '@ohos.wifi'; try { let stations = wifi.getStations(); console.info("result:" + JSON.stringify(stations)); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## StationInfo<sup>7+</sup> 接入的设备信æ¯ã€‚ **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **系统能力:** SystemCapability.Communication.WiFi.AP.Core | **å称** | **类型** | **å¯è¯»** | **å¯å†™** | **说明** | | -------- | -------- | -------- | -------- | -------- | | name | string | 是 | å¦ | 设备å称。 | | macAddress | string | 是 | å¦ | MAC地å€ã€‚ | | ipAddress | string | 是 | å¦ | IP地å€ã€‚ | ## wifi.deletePersistentGroup<sup>8+</sup> deletePersistentGroup(netId: number): boolean åˆ é™¤æ°¸ä¹…ç»„ã€‚ **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.SET_WIFI_INFO å’Œ ohos.permission.MANAGE_WIFI_CONNECTION **系统能力:** SystemCapability.Communication.WiFi.P2P **å‚数:** | **å‚æ•°å** | **类型** | å¿…å¡« | **说明** | | -------- | -------- | -------- | -------- | | netId | number | 是 | 组的ID。 | **返回值:** | 类型 | 说明 | | -------- | -------- | | boolean | true:æ“作执行æˆåŠŸï¼Œæ“作执行失败。 | **示例:** ```ts import wifi from '@ohos.wifi'; try { let netId = 0; wifi.deletePersistentGroup(netId); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.setDeviceName<sup>8+</sup> setDeviceName(devName: string): boolean 设置设备å称。 **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.SET_WIFI_INFO å’Œ ohos.permission.MANAGE_WIFI_CONNECTION,仅系统应用å¯ç”¨ã€‚ **系统能力:** SystemCapability.Communication.WiFi.P2P **å‚数:** | **å‚æ•°å** | **类型** | **å¿…å¡«** | **说明** | | -------- | -------- | -------- | -------- | | devName | string | 是 | 设备å称。 | **返回值:** | **类型** | **说明** | | -------- | -------- | | boolean | true:æ“作æˆåŠŸï¼Œ false:æ“作失败。 | **示例:** ```ts import wifi from '@ohos.wifi'; try { let name = "****"; wifi.setDeviceName(name); }catch(error){ console.error("failed:" + JSON.stringify(error)); } ``` ## wifi.on('streamChange')<sup>7+</sup> on(type: "streamChange", callback: Callback<number>): void 注册WIFIæµæ›´æ”¹äº‹ä»¶ã€‚ **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.MANAGE_WIFI_CONNECTION **系统能力:** SystemCapability.Communication.WiFi.STA **å‚数:** | **å‚æ•°å** | **类型** | **å¿…å¡«** | **说明** | | -------- | -------- | -------- | -------- | | type | string | 是 | 固定填"streamChange"å—符串。 | | callback | Callback<number> | 是 | 状æ€æ”¹å˜å›žè°ƒå‡½æ•°ï¼Œè¿”回0:æ— ï¼Œ1:å‘下,2:å‘上,3:åŒå‘。 | ## wifi.off('streamChange')<sup>7+</sup> off(type: "streamChange", callback?: Callback<number>): void å–消注册WIFIæµæ›´æ”¹äº‹ä»¶ã€‚ **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **需è¦æƒé™ï¼š** ohos.permission.MANAGE_WIFI_CONNECTION **系统能力:** SystemCapability.Communication.WiFi.STA **å‚数:** | **å‚æ•°å** | **类型** | **å¿…å¡«** | **说明** | | -------- | -------- | -------- | -------- | | type | string | 是 | 固定填"streamChange"å—符串。 | | callback | Callback<number> | å¦| 状æ€æ”¹å˜å›žè°ƒå‡½æ•°ï¼Œè¿”回0:æ— ï¼Œ1:å‘下,2:å‘上,3:åŒå‘。 | **示例:** ```ts import wifi from '@ohos.wifi'; let recvStreamChangeFunc = (result:number) => { console.info("Receive stream change event: " + result); } // Register event wifi.on("streamChange", recvStreamChangeFunc); // Unregister event wifi.off("streamChange", recvStreamChangeFunc); ``` ## wifi.on('hotspotStaJoin')<sup>7+</sup> on(type: "hotspotStaJoin", callback: Callback<StationInfo>): void 注册wifiçƒç‚¹staåŠ å…¥äº‹ä»¶ã€‚ **需è¦æƒé™ï¼š** ohos.permission.MANAGE_WIFI_HOTSPOT **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **系统能力:** SystemCapability.Communication.WiFi.AP.Core **å‚数:** | **å‚æ•°å** | **类型** | **å¿…å¡«** | **说明** | | -------- | -------- | -------- | -------- | | type | string | 是 | 固定填"hotspotStaJoin"å—符串。 | | callback | Callback<StationInfo> | 是 | 状æ€æ”¹å˜å›žè°ƒå‡½æ•°ã€‚ | ## wifi.off('hotspotStaJoin')<sup>7+</sup> off(type: "hotspotStaJoin", callback?: Callback<StationInfo>): void å–消注册wifiçƒç‚¹staåŠ å…¥äº‹ä»¶ã€‚ **需è¦æƒé™ï¼š** ohos.permission.MANAGE_WIFI_HOTSPOT **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **系统能力:** SystemCapability.Communication.WiFi.AP.Core **å‚数:** | **å‚æ•°å** | **类型** | **å¿…å¡«** | **说明** | | -------- | -------- | -------- | -------- | | type | string | 是 | 固定填"hotspotStaJoin"å—符串。 | | callback | Callback<StationInfo> | å¦ | 状æ€æ”¹å˜å›žè°ƒå‡½æ•°ã€‚ | **示例:** ```ts import wifi from '@ohos.wifi'; let recvHotspotStaJoinFunc = (result:wifi.StationInfo) => { console.info("Receive hotspot sta join event: " + result); } // Register event wifi.on("hotspotStaJoin", recvHotspotStaJoinFunc); // Unregister event wifi.off("hotspotStaJoin", recvHotspotStaJoinFunc); ``` ## wifi.on('hotspotStaLeave')<sup>7+</sup> on(type: "hotspotStaLeave", callback: Callback<StationInfo>): void 注册wifiçƒç‚¹sta离开事件。 **需è¦æƒé™ï¼š** ohos.permission.MANAGE_WIFI_HOTSPOT **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **系统能力:** SystemCapability.Communication.WiFi.AP.Core **å‚数:** | **å‚æ•°å** | **类型** | **å¿…å¡«** | **说明** | | -------- | -------- | -------- | -------- | | type | string | 是 | 固定填"hotspotStaLeave"å—符串。 | | callback | Callback<StationInf]> | 是 | 状æ€æ”¹å˜å›žè°ƒå‡½æ•°ã€‚ | ## wifi.off('hotspotStaLeave')<sup>7+</sup> off(type: "hotspotStaLeave", callback?: Callback<StationInfo>): void å–消注册wifiçƒç‚¹sta离开事件。 **需è¦æƒé™ï¼š** ohos.permission.MANAGE_WIFI_HOTSPOT **系统接å£ï¼š** æ¤æŽ¥å£ä¸ºç³»ç»ŸæŽ¥å£ã€‚ **系统能力:** SystemCapability.Communication.WiFi.AP.Core **å‚数:** | **å‚æ•°å** | **类型** | **å¿…å¡«** | **说明** | | -------- | -------- | -------- | -------- | | type | string | 是 | 固定填"hotspotStaLeave"å—符串。 | | callback | Callback<StationInf]> | å¦ | 状æ€æ”¹å˜å›žè°ƒå‡½æ•°ã€‚ | **示例:** ```ts import wifi from '@ohos.wifi'; let recvHotspotStaLeaveFunc = (result:wifi.StationInfo) => { console.info("Receive hotspot sta leave event: " + result); } // Register event wifi.on("hotspotStaLeave", recvHotspotStaLeaveFunc); // Unregister event wifi.off("hotspotStaLeave", recvHotspotStaLeaveFunc); ```