Bluetooth状态转换图如下:
(BluetootOn)<----------------------<-
40 * | ^ -------------------->- |
41 * | | | |
42 * TURN_OFF | | SCAN_MODE_CHANGED m1 | | USER_TURN_ON
43 * AIRPLANE_MODE_ON | | | |
44 * V | | |
45 * (Switching) (PerProcessState)
46 * | ^ | |
47 * POWER_STATE_CHANGED & | | TURN_ON(_CONTINUE) | |
48 * ALL_DEVICES_DISCONNECTED | | m2 | |
49 * V |------------------------< | SCAN_MODE_CHANGED
50 * (HotOff)-------------------------->- PER_PROCESS_TURN_ON
51 *

本文详细解析了Android蓝牙从关闭到开启的全过程,通过BluetoothAdapterStateMachine的各个状态变化,包括PowerOff、WarmUp、HotOff、Switching到最后的BluetoothOn。在状态转换中,处理了USER_TURN_ON、TURN_ON_CONTINUE、SCAN_MODE_CHANGED等关键消息,阐述了状态机的工作原理及蓝牙服务的启动逻辑。
最低0.47元/天 解锁文章
1123

被折叠的 条评论
为什么被折叠?



