当前位置:   article > 正文

Android 蓝牙

android 蓝牙

从事Connectivity模块几年时间了,Team负责集成包括WiFi/Bluetooth(A2DP Source/Sink,HID[key/Audio],OPP,SPP)投屏类[Miracast,DLNA(DMR/DMP/DMS)],网络传输加密类协议(HDCP,DTCP)等功能;

最近写了WiFi专栏30篇左右,想总结的东西很多,比如Miracast Sink,DLNA。。。。

写一篇文章少则几小时,多则几天(断断续续),有时候还有画图。。。,毕竟每天还得搬砖嘛

看着这个蓝牙专栏十几个订阅的兄弟姐妹,真感觉对不住,乱糟糟的篇幅,现在开始抽空整理下,希望对得住大家哈!

也希望大家学习了无线互联相关技术后,路越走越宽,带着物联网,人工智能,无线通信走向巅峰哈!


1. Android蓝牙架构


Android Bluetooth架构

Android Bluetooth 集成


2. 蓝牙基础功能


2.1 Android 11 蓝牙Open & Scan


Android 12 Bluetooth Open[1]

Android 12 Bluetooth Open[2]

Android 12 Bluetooth Open[3]

HCI @Bluetooth Init

HCI_Inquiry

2.2 Android 12 Bluetooth Pair


Android 11 BT 配对流程[1]

Android 11 BT配对流程[2]

Android 11 BT配对流程[3]

Android 11 BT配对流程[4] - 配对状态上报流程

Android 11 BT配对流程[5] 配对交互

蓝牙配对HCI交互流程

3. Android  蓝牙协议连接


3.1 A2DP 


 A2DP协议介绍

A2DP协议连接&数据传输

AVDTP协议

3.1.1 A2DP Source


音频发送端:开发A2DP Source功能,是把当前的音频数据输出到外部设备(蓝牙耳机,音箱)播放。比如电视连接蓝牙音箱,声音从TV到音箱。

Android A2DP Source初始化

Android12 A2DP连接[1]

Android12 A2DP连接[2]

Android12 A2DP连接[3] ​​​​​​​

Android12 A2DP连接[4]

A2DP连接总结[Log&HCI]

3.1.2 A2DP Sink


音频接收端:开发A2DP Sink功能,是把外部的音频数据输出到外部设备(蓝牙耳机,音箱)播放。比如蓝牙音箱就是音频的接收端。

3.2 AVRCP


 

AVRCP协议

AVRCP协议介绍      //待完善

Avrcp连接流程

AVRCP @ 音量反向控制流程

3.3 HID


HID协议主要对应设备蓝牙鼠标/键盘/游戏手柄,蓝牙遥控器等

Bluetooth HID 键值Kernel态转换

getevent 用法

3.4 OPP


OPP(Object Push Profile)文件传输

3.5 BLE


BLE(Bluetooth Low Energy)低功耗蓝牙

3.6 SPP


4. 协议文档学习


 ACL&SCO链路介绍   

蓝牙SSP&SMP协议介绍

SDP 服务

蓝牙Authentication介绍

5. Misc


5.1 Android & Bluedroid

 Bluedroid中SSM(stream state machine)

5.2 其他


​​​​​​Android9 Bluetooth开发简介 <一>

Android9 Bluetooth开发简介 <二>

 Android 蓝牙服务

6. 调试&工具


Android HCI log   //保存HCI Log

工具分析HCI Log[FrontLine&Wireshark]

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/549239
推荐阅读
相关标签
  

闽ICP备14008679号