# 通过虾哥的封装修改 # ESP32 Wi‑Fi 连接 该组件封装了esp32的 Wi‑Fi 配网连接流程。 它会先使用存储在闪存中的凭据尝试连接 Wi‑Fi;如果失败,则启动接入点(AP)与 Web 服务器,供用户配置并连接到 Wi‑Fi 网络。 访问 Web 服务器的地址为 `http://192.168.4.1`。 ## 截图:Wi‑Fi 配置  ## 截图:高级选项  - 支持“ota”服务器自定义选项卡。 - 支持 "Connection: close" 响应头以节省打开的套接字。 - 支持语言请求。 - 支持 ESP32 SmartConfig(ESPTouch v2)。 - 支持多 Wi‑Fi SSID 管理。 - 自动切换到最佳 Wi‑Fi 网络。 - 提供用于 Wi‑Fi 配置的强制门户(Captive Portal)。 - 支持多语言(英语、中文)。 ## 使用 ```cpp // 初始化默认事件循环 ESP_ERROR_CHECK(esp_event_loop_create_default()); // 初始化 NVS 闪存(用于 Wi‑Fi 配置) esp_err_t ret = nvs_flash_init(); if (ret == ESP_ERR_NVS_NO_FREE_PAGES || ret == ESP_ERR_NVS_NEW_VERSION_FOUND) { ESP_ERROR_CHECK(nvs_flash_erase()); ret = nvs_flash_init(); } ESP_ERROR_CHECK(ret); // 读取 Wi‑Fi 配置 auto& ssid_list = SsidManager::GetInstance().GetSsidList(); if (ssid_list.empty()) { // 启动用于配置的 Wi‑Fi AP auto& ap = WifiConfigurationAp::GetInstance(); ap.SetSsidPrefix("ESP32"); ap.Start(); return; } // 否则,连接到 Wi‑Fi 网络 WifiStation::GetInstance().Start(); ```
idf.py add-dependency "chujie-cre/esp_wifi_connected^1.0.1"