docs(ble): 补记恢复过滤扫描优先与排障日志的决策
This commit is contained in:
parent
2238e965b9
commit
f0dbe5b1c5
|
|
@ -132,6 +132,19 @@ async function runStandardFlow({ key, ssid, password }) {
|
||||||
|
|
||||||
## 6. 修改记录
|
## 6. 修改记录
|
||||||
|
|
||||||
|
### 2026-09-10 恢复过滤扫描优先 + 搜索排障日志
|
||||||
|
|
||||||
|
#### src/ble/discovery.js
|
||||||
|
- 回退 2026-09-09 的"放弃过滤扫描改直接全扫"方案:真机验证该机型下无过滤扫描反而搜不出设备(修改前过滤扫描正常),存在机型兼容差异;恢复 `DISCOVERY_FILTER_SERVICE_UUIDS` 过滤扫描优先 + `fallbackToUnfilteredDiscoveryIfNeeded` 4s 兜底切全扫的原始策略,兜底切换日志(`[BLE][SCAN] filtered scan found nothing, fallback to unfiltered`)可在 vConsole 确认切换是否发生
|
||||||
|
- `upsertDevice` 返回布尔(是否新命中),事件通道(`device:found`)与轮询通道(`getBluetoothDevices`)均输出排障日志:`[BLE][SCAN] native devices=N newHits=M`(原生采集总量 vs JS 匹配命中量)、`[BLE][FOUND] event devices=N newHits=M`。真机排障按三级定位:
|
||||||
|
- `native devices=0` → 原生层没采到任何设备(权限/适配器/机型问题)
|
||||||
|
- `native devices>0, newHits=0` → 采到了但 JS 匹配规则全没命中(设备广播内容与关键词不符)
|
||||||
|
- 无任何 `[BLE][SCAN]` 日志 → 扫描流程未走到(初始化/会话状态问题)
|
||||||
|
- 启动扫描处输出 `[BLE][SCAN] filtered discovery started` / 过滤启动失败转全扫日志,均带 sessionId
|
||||||
|
|
||||||
|
#### src/constants/bluetooth.js
|
||||||
|
- 恢复 `DISCOVERY_FILTER_SERVICE_UUIDS` 导出(三个 128 位完整 UUID),供过滤扫描使用
|
||||||
|
|
||||||
### 2026-09-09 Taro 迁移后交互卡顿修复
|
### 2026-09-09 Taro 迁移后交互卡顿修复
|
||||||
|
|
||||||
#### src/ble/discovery.js
|
#### src/ble/discovery.js
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue