# communication_wifi_lite **Repository Path**: openharmony/communication_wifi_lite ## Basic Information - **Project Name**: communication_wifi_lite - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 42 - **Forks**: 67 - **Created**: 2021-03-11 - **Last Updated**: 2025-07-21 ## Categories & Tags **Categories**: harmonyos-drivers **Tags**: None ## README # WLAN服务组件 ## 简介 WLAN服务组件为设备提供接入与使用WLAN的相关接口,包括开启、关闭WLAN,监听WLAN状态等。 ## 目录 ``` foundation/communication/wifi_lite ├── interfaces # 组件对外提供接口代码存放目录 │ └── wifiservice # WLAN服务接口代码存放目录 ├── LICENSE # 版权声明文件 ``` ## 约束 WLAN服务组件使用C语言编写,目前支持wifi-iot开发板。 ## 使用 - 设备需要完成以下开发步骤,以开启WLAN: ``` //开启WLAN WifiErrorCode error = EnableWifi(); if (error != WIFI_SUCCESS) { return; } ``` - 设备需要完成以下开发步骤,以触发WLAN扫描: ``` //开启WLAN WifiErrorCode error = Scan(); if (error != WIFI_SUCCESS) { return; } ``` - 设备需要完成以下开发步骤,以获取WLAN扫描结果: ``` WifiScanInfo* infoList = malloc(sizeof(WifiScanInfo) * WIFI_SCAN_HOTSPOT_LIMIT); unsigned int size = WIFI_SCAN_HOTSPOT_LIMIT; error = GetScanInfoList(infoList, &size); if (error != WIFI_SUCCESS || size == 0) { return; } ``` - 设备需要完成以下开发步骤,以配置接入点的接入方式: ``` int netId = 0; WifiDeviceConfig config = {0}; config.freq = 20; config.securityType = WIFI_SEC_TYPE_PSK; config.wapiPskType = WIFI_PSK_TYPE_ASCII; memcpy_s(config.ssid, WIFI_MAX_SSID_LEN, "Sample", 10); //在这里输入待连接WLAN的名称 unsigned char bssid[WIFI_MAC_LEN] = {0xac, 0x75, 0x1d, 0xd8, 0x55, 0xc1}; //在这里输入待连接WLAN的BSSID memcpy_s(config.bssid, WIFI_MAC_LEN, bssid, WIFI_MAC_LEN); memcpy_s(config.preSharedKey, WIFI_MAX_KEY_LEN, "1234567890", 10); //在这里输入待连接WLAN的口令 WifiErrorCode error = AddDeviceConfig(&config, &netId); if (error != WIFI_SUCCESS || netId == 0) { return; } ``` - 设备需要完成以下开发步骤,以连接配置的WLAN: ``` error = ConnectTo(netId); //netId来自上一步 if (error != WIFI_SUCCESS) { return; } ```