fix: emit network-ready immediately when wired internet available, setup AP async
Made-with: Cursor
This commit is contained in:
@@ -37,7 +37,7 @@ class ProvisionManager extends EventEmitter {
|
|||||||
async start() {
|
async start() {
|
||||||
led.off(); // 初始状态:灭灯
|
led.off(); // 初始状态:灭灯
|
||||||
|
|
||||||
// WiFi 已连接 → 直接进入 STA 模式
|
// WiFi STA 已连接 → 直接进入 STA 模式
|
||||||
if (isWifiStaConnected()) {
|
if (isWifiStaConnected()) {
|
||||||
this._state = 'sta';
|
this._state = 'sta';
|
||||||
log.info('provision', 'WiFi STA 已连接,AP 不启动');
|
log.info('provision', 'WiFi STA 已连接,AP 不启动');
|
||||||
@@ -46,7 +46,18 @@ class ProvisionManager extends EventEmitter {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 有已保存的 WiFi 配置 → 等 NM 自动连接(重启场景)
|
// 有线有网 → 立即通知 WS 连接,后台异步设置 AP 供 WiFi 配网
|
||||||
|
if (hasInternet()) {
|
||||||
|
log.info('provision', '有线网络就绪,立即启动 WS,AP 后台准备中...');
|
||||||
|
this._emitNetworkReady();
|
||||||
|
setTimeout(() => {
|
||||||
|
this._enterAP();
|
||||||
|
this._startMonitor();
|
||||||
|
}, 0);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 无网:有已保存的 WiFi 配置 → 等 NM 自动连接(重启场景)
|
||||||
if (hasSavedWifiConnection()) {
|
if (hasSavedWifiConnection()) {
|
||||||
log.info('provision', '发现已保存的 WiFi 配置,等待 NetworkManager 自动连接...');
|
log.info('provision', '发现已保存的 WiFi 配置,等待 NetworkManager 自动连接...');
|
||||||
led.blink(); // 等待自动重连期间闪烁
|
led.blink(); // 等待自动重连期间闪烁
|
||||||
|
|||||||
Reference in New Issue
Block a user