在Android AOSP源码关于车机的部分有关于Bluetooth的部分。接口在car-lib的CarBluetoothManager中。CarBluetoothManager是用于设置特定于汽车的蓝牙连接管理策略的api,AIDL接口在ICarBluetooth.aidl。
1. ICarBluetooth.aidl接口
setBluetoothDeviceConnectionPriority
是为配对的蓝牙设备设置自动连接优先级。例如,如果某个设备被标记为支持的蓝牙配置文件的主设备(优先级0),则每次新的自动连接尝试都将从尝试连接到该设备开始。此优先级设置为蓝牙配置文件粒度。
clearBluetoothDeviceConnectionPriority
清除给定配置文件的自动连接优先级
isPriorityDevicePresent
是否有一个设备被标记为给定配置文件的给定优先级
getDeviceNameWithPriority
返回蓝牙设备地址的字符串,该字符串已标记为给定配置文件的给定优先级
2. CarBluetoothService
CarBluetoothService-通过蓝牙自动连接到已知设备。与策略{@link BluetoothDeviceConnectionPolicy}交互以启动连接并更新状态。{@link BluetoothDeviceConnectionPolicy}负责查找用于连接特定配置文件的适当设备。
CarBluetoothService创建的时候,会调用BluetoothDeviceConnectionPolicy的create函数创建BluetoothDeviceConnectionPolicy。初始化时会调用BluetoothDeviceConnectionPolicy的init函数初始化BluetoothDeviceConnectionPolicy。
网友评论