【Bluedroid】BLE 地址解析列表的初始化与清除机制(btm_ble_resolving_list_init)
本文深入分析 Android 蓝牙协议栈中 BLE 地址解析列表的核心管理流程,涵盖从主机协议栈初始化到控制器硬件操作的全链路实现。重点解析可解析私有地址(RPA)处理机制、隐私保护技术实现,探讨标准 HCI 命令与厂商特定命令在地址解析中的协同工作方式,揭示了BLE 隐私机制的底层实现原理。
一、概述
1. BLE 隐私机制基础
-
可解析随机地址 (RPA) 与身份解析密钥 (IRK)
-
解析列表 (Resolving List) 的作用与结构
2. 解析列表初始化流程
-
btm_ble_resolving_list_init
函数实现 -
内存分配与控制器配置
-
标准方法与厂商特定命令的分支处理
3. 解析列表管理机制
-
清除操作的命令序列:禁用解析→清除列表→启用解析
-
异步处理与状态同步
-
影子列表 (Shadow List) 的作用
4. 厂商特定命令实现
-
RPA of