Linux驱动学习--BT框架一之Bluez、BlueDroid框架介绍_bluez和bluedroid-程序员宅基地

技术标签: Android项目实践之Linux内核/驱动学习  bt  驱动程序  Android项目之WIFI/BT专题  android  linux  蓝牙  

目录

1、引言
2、蓝牙框架介绍
3、Bluez框架分析
4、BlueDroid框架分析
5、libbt-vendor.so
6、从bluetooth.default.so到libbt-vendor.so的流程
7、标准/厂家自定义蓝牙协议的驱动

一、引言

刚开始接触调试BT的时候,被android中的源码和网上的各种帖子说的有点晕,花了点时间,好好整理了一下,今天来和大家一起分享下

本文会着重介绍BlueDroid,大致介绍BlueZ框架

二、蓝牙框架介绍

BlueDroid && BlueZ

Android 4.2之前,Google一直使用的是Linux官方蓝牙协议栈BlueZ。BlueZ实际上是由高通公司在2001年5月基于GPL协议发布的一个开源项目,做为Linux 2.4.6内核的官方蓝牙协议栈。随着Android设备的流行,BlueZ也得到了极大的完善和扩展。例如Android 4.1中BlueZ的版本升级为4.93,它支持蓝牙核心规范4.0,并实现了绝大部分的Profiles。
从Android 4.2开始,Google便在Android源码中推出了它和博通公司一起开发的BlueDroid以替代BlueZ。BlueZ的创始者&#x

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_38019025/article/details/106139150

智能推荐

matlab残差分析是什么,基于matlab的长时间栅格序列的残差分析-程序员宅基地

文章浏览阅读2.3k次,点赞3次,收藏27次。在量化人类活动对生态参量的影响时,常常引入残差分析法来进行量化,本文在matlab平台下对NDVI进行残差分析,选取的自变量是降水和温度。代码如下所示,通过下面代码,能够获取残差的空间分布及残差趋势以及统计得到的研究区每年的残差值。%author [email protected][aa,R]=geotiffread('D:\年NDVI\2000anveage_ndvi.tif');%先..._栅格数据的残差分析

WPS Office 国际版 添加中文语言包 及相关问题_wps国际版中文语言包-程序员宅基地

文章浏览阅读3.8w次,点赞7次,收藏11次。WPS Office 国际版添加中文语言包1 如何添加中文1.1 准备mui文件夹(包含中文语言包) 建议先安装 WPS Office 国内版,提取其中的mui文件夹; 它应当包含以下目录: mui\default mui\zh_CN 也可通过网上下载。1.2 安装语言包删除 “ kingsoft\WPS Office\ ”目..._wps国际版中文语言包

Scrapy集成Selenium ChromeDriver_scrapy driver-程序员宅基地

文章浏览阅读2.7k次。官网chromedriverchromedriver-downloadsRunning Selenium Headless with Chrome安装chrome浏览器1、windows可通过 帮助->关于Google Chrome查看已安装的Chrome版本2、linuxTODO下载chromdriver下载链接:https://sites.google.com/a/chromium.org/chromedriver/downloads1、选择对应的版本2、选择对应的操作系_scrapy driver

00_Ubuntu系统入门_ubuntu入门-程序员宅基地

文章浏览阅读3k次,点赞11次,收藏88次。Ubuntu系统入门,shell,Makefile。_ubuntu入门

【bzoj1798】[Ahoi2009]Seq 维护序列seq 线段树-程序员宅基地

文章浏览阅读252次。原题题解:线段树区间乘法,lazy标记的更新对于我这种萌新来说是个难点qwq。先理清楚想好了再写。先乘后除,一步一步慢慢来。//bzoj1798 [Ahoi2009]维护序列#include<iostream>#include<cstdio>#include<cstring>#define lson l,m,pos<<1#define rs...

微信小程序使用weui样式框架-程序员宅基地

文章浏览阅读2.8k次。WeUI 是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信内网页和微信小程序量身设计,令用户的使用感知更加统一。包含button、cell、dialog、 progress、 toast、article、actionsheet、icon等各式元素。以下内容是纯UI库,如果想使用逻辑封装版本,请看小程序组件库 - WeUIWEUI的组件库这篇文章只介绍样式如何引入↓↓↓github下载:weui-wxss将dist文件导入到微信开发者工具3.看到这个界面就说明._weui样式

随便推点

为下拉式菜单(DropDownList)添加第一个选项-程序员宅基地

文章浏览阅读268次。很多方法可以为为下拉式菜单(DropDownList)添加第一个选项,下面是Insus.NET小结了几个方法,仅供参考:Html code:View Code <body> <form id="form1" runat="server"> <div> <asp:DropDownList ID="DropDownLi..._html.drowdownlistfor 永远只显示第一个选项

基于FPGA读写MT25QL FLASH芯片_mt25ql128手册-程序员宅基地

文章浏览阅读1.1k次,点赞21次,收藏18次。FLASH存储器又称闪存,是一种长寿命的非易失性存储器,一般用来保存一些重要的设置信息或者程序等等。本文将在介绍FLASH有关的基础知识后,说明如何配置MT25QL128ABA这块FLASH芯片,包含对相关指令的解析和读写操作需要注意的点,当然,仿真图必不可少了,文中也有给出相应的仿真图。_mt25ql128手册

Ubuntu下怎么通过命令完成蓝牙的配对和连接_ubuntu16.04 蓝牙怎么控制-程序员宅基地

文章浏览阅读1.9w次,点赞5次,收藏26次。1.输入hciconfig命令,确认你的蓝牙设备是否被系统识别,避免你插入多个蓝牙设备2.为你的蓝牙设备上电,输入hciconfig hci0 up3.输入bluetoothctl命令4.启动搜索模式,输入scan on5.当找到你需要连接的蓝牙设备时,输入scan off,停止探索6.完成配对输入pair 蓝牙地址(你需要连接的设备)7.手机端需要确认配对请求,之后ubu..._ubuntu16.04 蓝牙怎么控制

关于anaconda2和anconda3安装_anaconda2和3哪个好-程序员宅基地

文章浏览阅读1.1k次。前段时间因为学数据挖掘,要打开一个啥.ipynb,直接打开的话,嗯~ o(* ̄▽ ̄*)o,界面很不友好了,看不懂…….https://blog.csdn.net/qq_16633405/article/details/80198648 –如何打开.ipynb文件里面有提到三种方法,也有在线直接打开的,省事儿的很,懒人必备啊,但是考虑到身为一个IT界的小菜鸟,还是安anaconda吧,貌似考..._anaconda2和3哪个好

MATLAB中cvx工具箱的使用介绍-程序员宅基地

文章浏览阅读1.4k次,点赞10次,收藏26次。cvx工具箱_cvx工具箱

配置oracle用户的环境变量,window中oracle环境变量设置方法分享-程序员宅基地

文章浏览阅读686次。window server中Oracle的环境变量设置1、右击“我的电脑”->选择“属性”->选择“高级”->单击“环境变量”2、选择“Path”这一行,单击“编辑”,在“Path”的变量值文本框的最后面先加入一个分号“:”,然后再分号后面加入sqlplus文件的目录路径,如“C:\Program Files\oracle\product\10.2.0\db_1\BIN”,然后点..._windows系统oracle监听需要修改哪些环境变量

推荐文章

热门文章

相关标签