蓝牙(Bluetooth)总结

一、蓝牙理论方面的总结

1.是一种无线技术标准,可实现固定设备、移动设备和楼宇个人域网之间的短距离数据交换(使用2.4—2.485GHz的ISM波段的UHF无线电波)。

2.蓝牙使用跳频技术,蓝牙4.0使用2 MHz 间距,可容纳40个频道。第一个频道始于2402 MHz,每2MHz一个频道,至2480 MHz。

3.蓝牙是基于数据包、有着主从架构的协议。一个主设备至多可和同一微微网中的七个从设备通讯。

4.蓝牙4.0版本的一般性改进包括推进蓝牙低功耗模式所必需的改进、以及通用属性配置文件(GATT) 和AES加密的安全管理器(SM) 服务。

5.蓝牙4.2,实现物联网:支持灵活的互联网连接选项(IPv6/6LoWPAN 或 Bluetooth Smart 网关);让Bluetooth Smart 更智能:业界领先的隐私权限、节能效益和和堪称业界标准的安全性能;让Bluetooth Smart 更快速: 吞吐量速度和封包容量提升。

二、蓝牙实践总结

1).控制设备基本流程

1. 获取蓝牙适配器

2.判断蓝牙是否打开-- 方法1:

传打开蓝牙意图ACTION_REQUEST_ENABLE

方法2:blueadapter.enable();  直接调Api。

3.通过蓝牙设备地址(如:54:4A:16:1F:41:79),通过蓝牙设备地址获取BluetoothDevice对象,然后调用connectGatt()方法,获取BluetoothGatt设备,直到目前最新的Android4.4.2,Android手机只能作为中央来使用和处理数据。中央BluetoothGatt和周边BluetoothGattServer的实现

4.BluetoothLeService类集成BluetoothGattCallback抽象类,BluetoothGattCallback返回中央的状态和周边提供的数据。这个方法里面判断是否处于连接状态,如果不是的,要把中央设备BluetoothGattCallback的对象释放出来。

5.重写onServicesDiscovered(...),这个方法里面做两件事情。第一件,判断周边设备是否与中央设备连接上。每一个周边BluetoothGattServer,包含多个服务Service,每一个Service包含多个特征Characteristic。第二件,中央BluetoothGatt通过具体服务名称(fff0)找到周边设备中具体某一个服务,然后通过特征字(fff1)找到这个服务中具体某一个特征通道,然后传输指令值。

6 .重写onCharacteristicWrite()方法,这个特征值传入成功后的一个回调,然后读取周边设备返回的数据。

7. 重写onCharacteristicRead(),读到的数据都会回调在这里。

8.发送广播拿到数据

2).BluetoothGatt(作为中央来使用和处理数据)的源代码分析

1.BluetoothGatt实现BluetoothProfile接口,现在先讲一下蓝牙属性接口BluetoothProfile,BluetoothProfile包含一些状态值。

2. BluetoothProfile属性中,public static final int A2DP = 2; A2DP是Advanced Audio Distribution Profile,Bluetooth的profile总结

3. 还有获取连接的设备集合、通过状态数组获取匹配这个状态设备集合、具体某个设备的连接状态等。这三个方法就是实现BluetoothProfile接口,必须要实现的。

3. 下面两个属性很重要,控制蓝牙设备每一个步骤都会有一个相应的回调方法,并且返回state状态值,通过判断state等于什么值来判断每一个步骤是否成功。

public static final int GATT_SUCCESS = 0;

public static final int GATT_FAILURE = 0x101;

4.常用方法之一close()方法,如果中央设备处于断开连接状态,我们需要调用close方法,底层代码把状态改为CONN_STATE_CLOSED状态,并且调用unregisterApp()方法,


3).Android 蓝牙4.0(BLE)开发实现对蓝牙的写入数据和读取数据 (lib.csdn.net/article/embeddeddevelopment/32602

三、蓝牙兼容性问题

1.这个问题怎么来的呢?虽然蓝牙SIG组织在应用的互操作性方面以profile的形式对一些功能做了规定,但有的功能并没有在profile中定义,还有就是做了规定的没有做那么多的严格界定条件,那么这个功能的实现便取决于各个手机厂商的具体实现,实现不同这就带来了兼容性问题。

2.手机的兼容性问题可以说是制约蓝牙应用的一个关键因素,同时也是决定一款优秀的车载蓝牙设备的功能完善性的一个因素。怎么解决这个问题呢,首先要在底层解决,这个取决于采用的蓝牙芯片供应商及其方案,比如CSR(Cambridge Silicon Radio)公司,它是蓝牙业界的领导者,在兼容性方面做了非常充分的测试,其固件和蓝牙协议栈凝结了CSR在蓝牙领域的多年开发经验,而且其固件可升级,每次固件的升级都经过了大量的严格的测试,首先在底层上就保证了最大程度的蓝牙兼容性。

3.浅谈android蓝牙连接和兼容性问题

4.支持“智能蓝牙”(Bluetooth Smart):Android 4.3系统正式支持低能耗蓝牙4.0技术(Bluetooth 4.0 Low Energy)。相较于3.0版本,蓝牙4.0拥有低功耗、3毫秒低延迟、AES-128加密等特点,它将三种规格集一体,包括传统蓝牙技术、高速技术和低耗能技术。根据官方的数据,蓝牙4.0的峰值能耗约为3.0的一半,极低的运行和待机功耗使得一粒纽扣电池甚至可连续工作一年之久。考虑到安卓设备的全球占有率情况,低能耗的连接方式,将会促进可穿戴设备的普及,并加速互联网的建设。

5.日前,蓝牙技术联盟推 出BluetoothSmart Ready和BluetoothSmart两个新商标,未来将帮助消费者识别具有蓝牙4.0版本兼容性的新设备。蓝牙技术联盟首席营销官Suke Jawanda在接受本刊记者采访时说,蓝牙4.0是最新的蓝牙无线技术, 其具备的低耗能特点是Bluetooth Smart设备的基础。贴有Bluetooth Smart Ready和BluetoothSmart商标的产品必须配置蓝牙4.0版本。Suke Jawanda介绍说,蓝牙4.0支持两种不同的无线射频,Bluetooth SmartReady设备的射频被称为双模式射频,表示其同时支持传统蓝牙无线连接和新蓝牙低耗能连接。Bluetooth Smart设备的射频被称为单模式射频,表示其仅支持新蓝牙低耗能连接。

6.兼容性问题总结下既是:

Smart Ready可以和Smart Ready、smart、传统蓝牙之间连接和通信;

Smart可以和Smart、Smart Ready之间连接和通信;

传统蓝牙可以和传统蓝牙、Smart Ready之间连接和通信;

由于现在比较主流的CC2540是BLE单模芯片,属于Smart, 所以只能和Smart Ready、Smart之间连接和通信,是不兼容传统蓝牙的。同时支持BR和BLE的设备成为双模设备,目前一般手机采用的蓝牙芯片都是双模的。本人使用的手机蓝牙硬件是支持BLE的,但是由于系统是安卓4.1的,所以必须要通过刷机到4.3以上版本,才能和CC2540进行连接通信。

7.根据Bluetooth SIG发布的Bluetooth 4.0核心规范白皮书,Bluetooth 4.0低耗电模式有双模式和单模式两种应用。低功耗蓝牙的单模式功能组件是一个高度集成的装置,具备轻量的链路层(Link Layer),能在最低成本的前提下,支持低功耗的待机模式、简易的设备发现、可靠的点对多点的数据传输、安全的加密链接等;位于上述控制器中的链路层, 适用于网络连接传感器,并确保在无线传输中,都能通过低功耗蓝牙传输。

低功耗蓝牙单模式架构,L2CAP为新开发的替代模块

在双模式应用中,蓝牙低功耗的功能会整合至现有的传统蓝牙控制器中,共享传统蓝牙技术已有的射频和功能,相较于传统的蓝牙技术,增加的成本更小;除 此之外,制造商可利用升级版蓝牙低功耗技术的功能模块,集成目前的蓝牙3.0高速版本、或2.1+EDR等传统蓝牙功能组件,从而改善传统蓝牙设备的数据 传输效能。

四、其他总结比较好博客收藏

1.深入了解Android蓝牙Bluetooth ——《总结篇》

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 210,914评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 89,935评论 2 383
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,531评论 0 345
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,309评论 1 282
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,381评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,730评论 1 289
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,882评论 3 404
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,643评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,095评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,448评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,566评论 1 339
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,253评论 4 328
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,829评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,715评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,945评论 1 264
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,248评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,440评论 2 348

推荐阅读更多精彩内容