BlueDroid软件协议栈架构

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mouse1598189/article/details/87858779

蓝牙
在这里插入图片描述

架构

在这里插入图片描述

组件 说明
LibHardware 指定硬件抽象层(HAL);定义了蓝牙堆栈必须实现的所有HAL接口。
蓝牙接口层 ■实现JNI调用调用的HAL接口
■维护JNI注册的回调
■根据蓝牙应用层(BTA)堆栈的回调调用JNI回调
■提供应用程序的接口
BTA(与Android应用程序不同) ■实现蓝牙配置文件
■维护配置文件状态机
■处理堆栈中的事件并将事件发送回接口层
BlueDroid堆栈 实现核心堆栈和协议
HCI层 ■构建为共享库(libbt-hci)
■充当传输层和堆栈之间的接口■支持HCI H4;例如,将上层的串行驱动程序调用粘合在一起
蓝牙应用 包括以下内容
■Bluetooth.apk,包含蓝牙配置文件服务和其他蓝牙功能;进程由设置UI启动
■BluetoothExt.apk,包含Qualcomm添加的蓝牙配置文件服务;进程由设置UI启动
■蓝牙中间件组件

源码

Contents of folder Folder path
BlueDroid stack user space component external/bluetooth/bluedroid/
Android Bluetooth profile interface files frameworks/base/core/java/android/bluetooth
Android native Java files OBEX profile implementation frameworks/base/obex/
OBEX profile implementation packages/apps/Bluetooth
Bluetooth setting application in Java vendor/qcom/opensource-bluetooth,
packages/apps/Settings/src/com/android/settings/bluetooth
Android Bluetooth profile service files packages/apps/Bluetooth/src/com/android/bluetooth
APIs to control the Bluetooth profiles frameworks/base/core/java/android/bluetooth
Android Bluetooth JNI files packages/apps/Bluetooth/jni
BluetoothExt.apk directory vendor/qcom/opensource/bluetooth
SAP application layer files vendor/qcom/opensource/bluetooth/src/com/android/sap
Android default messaging application in Java packages/apps/Mms
Android default email application in Java packages/apps/Email
PBAP files packages/apps/Bluetooth/src/com/android/bluetooth/pbap
OPP files packages/apps/Bluetooth/src/com/android/bluetooth/opp
FTP files vendor/qcom/opensource/bluetooth/ftp
A2DP files packages/apps/Bluetooth/src/com/android/bluetooth/a2dp/
MAP files /packages/apps/Bluetooth/src/com/android/bluetooth/map/
AVRCP CoverArt files vendor/qcomm/opensource/bluetooth_ext/packages_apps_bluetooth_ext/avrcp
AVRCP files packages/apps/Bluetooth/src/com/android/bluetooth/avrcp/

猜你喜欢

转载自blog.csdn.net/mouse1598189/article/details/87858779