@ohos.wifiManager (WLAN)

该模块主要提供WLAN基础功能的相应服务,让应用可以通过WLAN和其他设备互联互通。

说明:

本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

import wifiManager from '@ohos.wifiManager';

wifiManager.isWifiActive11+

isWifiActive(): boolean

查询WLAN是否已使能。

iOS不支持

系统能力:SystemCapability.Communication.WiFi.STA

返回值:

类型 说明
boolean true:已使能, false:未使能。

示例:

    import wifiManager from '@ohos.wifiManager';

	try {
		let isWifiActive = wifiManager.isWifiActive();
		console.info("isWifiActive:" + isWifiActive);
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

wifiManager.getLinkedInfo11+

getLinkedInfo(): Promise<WifiLinkedInfo>

获取WLAN连接信息,使用Promise异步回调。

需要权限:ohos.permission.GET_WIFI_INFO

系统能力:SystemCapability.Communication.WiFi.STA

返回值:

类型 说明
Promise<WifiLinkedInfo> Promise对象。表示WLAN连接信息。

wifiManager.getLinkedInfo11+

getLinkedInfo(callback: AsyncCallback<WifiLinkedInfo>): void

获取WLAN连接信息,使用callback异步回调。

需要权限:ohos.permission.GET_WIFI_INFO

系统能力:SystemCapability.Communication.WiFi.STA

参数:

参数名 类型 必填 说明
callback AsyncCallback<WifiLinkedInfo> 回调函数。当获取成功时,err为0,data表示WLAN连接信息。如果error为非0,表示处理出现错误。

示例:

import wifiManager from '@ohos.wifiManager';

wifiManager.getLinkedInfo((err, data) => {
    if (err) {
        console.error("get linked info error");
        return;
    }
    console.info("get wifi linked info: " + JSON.stringify(data));
});

wifiManager.getLinkedInfo().then(data => {
    console.info("get wifi linked info: " + JSON.stringify(data));
}).catch(error => {
    console.info("get linked info error");
});

WifiLinkedInfo11+

提供WLAN连接的相关信息。

系统能力:SystemCapability.Communication.WiFi.STA

名称 类型 可读 可写 Android iOS 说明
ssid string 热点的SSID,编码格式为UTF-8。
bssid string 热点的BSSID。
networkId number 网络配置ID。系统接口: 此接口为系统接口。 仅Android支持
rssi number 热点的信号强度(dBm)。 iOS不支持
band number WLAN接入点的频段。 不支持跨平台
linkSpeed number WLAN接入点的速度。 iOS不支持
frequency number WLAN接入点的频率。 iOS不支持
isHidden boolean WLAN接入点是否是隐藏网络。iOS不支持
isRestricted boolean WLAN接入点是否限制数据量。 不支持跨平台
macType number MAC地址类型。 不支持跨平台
macAddress string 设备的MAC地址。 不支持跨平台
ipAddress number WLAN连接的IP地址。 不支持跨平台
connState ConnState WLAN连接状态。 不支持跨平台

ConnState11+

表示WLAN连接状态的枚举。

系统能力:SystemCapability.Communication.WiFi.STA

名称 说明
SCANNING 0 设备正在搜索可用的AP。
CONNECTING 1 正在建立WLAN连接。
AUTHENTICATING 2 WLAN连接正在认证中。
OBTAINING_IPADDR 3 正在获取WLAN连接的IP地址。
CONNECTED 4 WLAN连接已建立。
DISCONNECTING 5 WLAN连接正在断开。
DISCONNECTED 6 WLAN连接已断开。
UNKNOWN 7 WLAN连接建立失败。

wifiManager.isConnected11+

isConnected(): boolean

查询WLAN是否已连接。

需要权限:ohos.permission.GET_WIFI_INFO

系统能力:SystemCapability.Communication.WiFi.STA

返回值:

类型 说明
boolean true:已连接, false:未连接。

示例:

	import wifiManager from '@ohos.wifiManager';

	try {
		let ret = wifiManager.isConnected();
		console.info("isConnected:" + ret);
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

wifiManager.on('wifiStateChange')11+

on(type: "wifiStateChange", callback: Callback): void

注册WLAN状态改变事件。

iOS不支持

需要权限:ohos.permission.GET_WIFI_INFO

系统能力:SystemCapability.Communication.WiFi.STA

参数:

参数名 类型 必填 说明
type string 固定填"wifiStateChange"字符串。
callback Callback<number> 状态改变回调函数。

状态改变事件的枚举:

枚举值 说明
0 未激活。
1 已激活。
2 激活中。iOS不支持
3 去激活中。iOS不支持

wifiManager.off('wifiStateChange')11+

off(type: "wifiStateChange", callback?: Callback): void

取消注册WLAN状态改变事件。

iOS不支持

需要权限:ohos.permission.GET_WIFI_INFO

系统能力:SystemCapability.Communication.WiFi.STA

参数:

参数名 类型 必填 说明
type string 固定填"wifiStateChange"字符串。
callback Callback<number> 状态改变回调函数。如果callback不填,将去注册该事件关联的所有回调函数。

示例:

import wifiManager from '@ohos.wifiManager';

var recvPowerNotifyFunc = result => {
    console.info("Receive power state change event: " + result);
}

// Register event
wifiManager.on("wifiStateChange", recvPowerNotifyFunc);

// Unregister event
wifiManager.off("wifiStateChange", recvPowerNotifyFunc);

wifiManager.on('wifiConnectionChange')11+

on(type: "wifiConnectionChange", callback: Callback): void

注册WLAN连接状态改变事件。

需要权限:ohos.permission.GET_WIFI_INFO

系统能力:SystemCapability.Communication.WiFi.STA

参数:

参数名 类型 必填 说明
type string 固定填"wifiConnectionChange"字符串。
callback Callback<number> 状态改变回调函数。

连接状态改变事件的枚举:

枚举值 说明
0 已断开。
1 已连接。

wifiManager.off('wifiConnectionChange')11+

off(type: "wifiConnectionChange", callback?: Callback): void

取消注册WLAN连接状态改变事件。

需要权限:ohos.permission.GET_WIFI_INFO

系统能力:SystemCapability.Communication.WiFi.STA

参数:

参数名 类型 必填 说明
type string 固定填"wifiConnectionChange"字符串。
callback Callback<number> 状态改变回调函数。如果callback不填,将去注册该事件关联的所有回调函数。

示例:

  import wifiManager from '@ohos.wifiManager';
  
  let recvWifiConnectionChangeFunc = (result:number) => {
      console.info("Receive wifi connection change event: " + result);
  }
  
  // Register event
  wifiManager.on("wifiConnectionChange", recvWifiConnectionChangeFunc);
  
  // Unregister event
  wifiManager.off("wifiConnectionChange", recvWifiConnectionChangeFunc);