目录Phase A:直连发起(Direct Connection,30s 计时)日志代码调用链(关键分支)Phase A 流程图Phase B:直连失败(30s 超时 - GATT_CONNECTION_TIMEOUT / HCI_ERR_HOST_TIMEOUT)日志锚点(两个设备)Phase B 流程图Phase C:切换到背景重连(Background Connect,reconnection_mode_=0x02=TA)日志锚点代码调用链(关键分支)Phase C 流程图Phase D:TA 背景重连准备(开启 TA filtering + 注册 TA observe 回调)日志锚点代码调用链Phase D 流程图Phase E:TA observe 回调触发(在广告包处理链里命中)日志锚点(真正命中 TA 的那一刻)代码调用链(BTM 广告处理 - targeted observe callback)Phase E 流程图Phase F:TA 命中后“开启 LE scan + 直连建立”并成功(含 30s timer 逻辑)日志锚点(核心正向链路)代码调用链(direct_connect_add 的“30s timer + accept list + 直连触发”)Phase F 流程图(Phase F 后置)连接就绪后:TA 模式下把组内未连设备加到 allow list总流程图拉锯后蓝牙耳机connection timeout断开连接,这个时候stack收到disconnect后会走direct_connect_add流程并且设置超时30s的timer图1中超时30s时,会取消连接,这个时候走reconnection_mode_=0x02=TA,开启过滤和Le scan,扫描到之后再把要连接的设备加到白名单,具体流程如下