赞
踩
Android 4.2之前的版本采用Linux官方的蓝牙协议栈BlueZ,Android 4.2开始使用google和Broadcom共同开发的Bluedroid来替代BlueZ,但早期的Bluedroid并不完善,存在较多问题,更新迭代后将其更名为fluoride。接下来的系列文章将逐步分析该协议栈的实现。
fluoride 实现了框架中的蓝牙协议栈,单独获取源码的方法为:
mkdir ~/fluoride
cd ~/fluoride
git clone https://android.googlesource.com/platform/system/bt
该系列文章使用 6e3c984806aa0ba9e8a836ef9fed12c1207a161e
提交的源码,即:
git checkout -b branch_tmp 6e3c984806aa0ba9e8a836ef9fed12c1207a161e
主要目录如下:
. ├── audio_a2dp_hw -- audio相关 ├── audio_bluetooth_hw -- audio相关 ├── audio_hal_interface -- audio相关 ├── audio_hearing_aid_hw -- audio相关 ├── binder -- binder接口定义 ├── bta -- Bluetooth Application ├── btcore -- Bluetooth Core,蓝牙数据类型定义和对这些数据类型的操作。 ├── btif -- Bluetooth Interface,JNI接口 ├── hci -- Host Controller Interface,通过HCI协议实现和蓝牙芯片的通信 ├── main -- Main stack entrypoint,访问协议栈的入口 ├── osi -- Operating System Interface,操作系统接口 ├── service -- 服务进程 ├── stack -- BT Host 实现 ├── tools -- Tools,常用工具 └── vnd -- Vendor,厂商实现的API
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。