Android菜鸟开发之蓝牙(Bluetooth)---设置应用源码分析

BluetoothDevicePreference.java
顾名思义,蓝牙设备首选项,也就是蓝牙设备的配置信息,比如是否连接,是否配对,是否可见等等。该类继承了preference类,主要是提供获取蓝牙设备及通知蓝牙设备配置信息变化。
 
BluetoothDiscoverableEnabler.java
蓝牙搜索UI逻辑处理,包括搜索暂停,搜索恢复,及蓝牙开启关闭时的蓝牙搜索处理,以及搜索超时等处理。该类同时使用了broadcast与handle机制,用来处理搜索的状态变化。
 
BluetoothEnabler.java
蓝牙功能的开启/关闭功能处理。
 
BluetoothEventRedirector.java
蓝牙事件转发处理。通过使用broadcast机制,在onstart里面注册了蓝牙的事件权限。
 
BluetoothNamePreference.java
监听蓝牙名字的变化
 
BluetoothPairingDialog.java
是activity,配对时各种提示框及按键事件处理,如用户请求配对,密码输入,密码确认,同意等提示框。
 
BluetoothPairingRequest.java
配对的数据处理,为BluetoothPairingDialog.java提供数据支持,同时启动BluetoothPairingDialog.java activity当蓝牙应用在前台并且屏幕是亮的,否则通知系统需要弹出提示框(比如蓝牙后台提示,通过notification通知提示)。
 
BluetoothPermissionActivity.java
允许连接的提示框处理
 
BluetoothPermissionRequest.java
为BluetoothPermissionActivity.java提供数据支持,若蓝牙在前台并且屏幕是亮的,则启动BluetoothPermissionActivity.java activity,否则使用notification来提示通知。
 
RequestPermissionActivity.java
询问用户是否开启蓝牙及蓝牙搜索,当前蓝牙状态如果是未开启状态,则开启蓝牙及蓝牙搜索;当前蓝牙如果是开启状态,则不处理;当只针对是否开启蓝牙时,则开启蓝牙并不开启蓝牙搜索。
 
RequestPermissionHelperActivity.java
询问用户是否开启蓝牙及蓝牙搜索,一般由RequestPermissionActivity.java启动。
 
SettingsBtStatus.java
蓝牙各种状态的资源显示
 
BluetoothSettings.java
蓝牙设置应用,蓝牙状态变化及设备绑定信息处理等。各个菜单处理主要是通过CachedBluetoothDevice.java来实现。主要有添加蓝牙设备,删除蓝牙设备,点击获取蓝牙设备信息,及创建具体蓝牙设备的菜单等。
 
 ConnectSpecificProfilesActivity.java
蓝牙设备耳机、A2DP、SAP相关的设置处理
 
 DockService.java
蓝牙Dock相关服务,配置信息的修改,连接的修改等。
 
DockEventReceiver.java
接收各种dock事件,并启动DockService服务。并提供一个结束服务方法。
 
CachedBluetoothDevice.java
提供蓝牙设备的各种属性信息以及提供蓝牙设备连接,配对等方法。
 
 CachedBluetoothDeviceManager.java
管理蓝牙设备,包括增加、删除蓝牙设备及通知
 
LocalBluetoothManager.java
提供了一系列蓝牙方法,如开始扫描、结束扫描逻辑处理。

你可能感兴趣的:(Bluetooth)