蓝牙(CoreBluetooth)-概述
蓝牙(CoreBluetooth)-概述
- 通过此框架可以让你的Mac和iOS应用程序与外部蓝牙设备通信
- 外部设备: 就是需要通过iOS App控制器的其他设备: 例如:心率检测仪、数字温控器
- 蓝牙通讯是基于传统的CS结构:客户端(中心设备)—-服务器(外部设备)
- 中心设备: 我们手机的App
- 外部设备: 通过iOS App控制器的其他设备
客户端—-服务器
- 服务端(外部设备)数据构成
服务端(外部设备)数据构成 - 外部设备作为服务端进行交互
外部设备就像一个信号塔,不停向外部广播自己的数据.中心设备就可以通过扫描找到外部设备,然后进行连接和数据交互.
外部设备作为服务端进行交互 - 中心设备内部数据的关系树状图
中心设备内部数据的关系树状图说明: 在中心设备端,可以通过扫描获取一个外部设备对象,该外设对象内部有若干个服务,每一个服务下面有若干个特征.特征是用于数据的交互的单元,也就是我们的App(中心设备) 与 心率测试仪(外部设备) 进行数据交互必须通过特征才可以.
- Mac、iPad、iPhone也可以作为服务端交互
Mac、iPad、iPhone也可以作为服务端交互 - 外部设备内部数据的类树状图
外部设备内部数据的类树状图说明: 在中心设备中,服务和特征都是不可变的,也就是只能读不能写. 只有外设本身才能对自己的服务和特征进行新增和修改操作.
所有在外设端的服务和特征是可变的.
一个外设中可以添加若干个服务,一个服务中可以添加若干个特征.只有通过特征,中心设备(我们的App)才能与外部设备(通过我们App控制的其他设备)
进行通信.
蓝牙(CoreBluetooth)-概述的更多相关文章
- 蓝牙核心技术概述(五):蓝牙协议规范(irOBEX、BNEP、AVDTP、AVCTP)
关键词:蓝牙核心技术协议 irDA BNEP AVDTP AVCTP 作者:xubin341719(欢迎转载,请注明作者,请尊重版权,谢谢! )欢迎指正错误,共同学习.共同进步!! 下载链接:Bl ...
- 蓝牙(CoreBluetooth)-外部设备(服务端)
蓝牙(CoreBluetooth)-外部设备(服务端) 主要内容 1. 创建外部管理器对象 2. 设置本地外设的服务和特征 3. 添加服务和特征到到你的设置的数据库中 4. 向外公布你的的服务 5. ...
- 蓝牙(CoreBluetooth)-中心设备(客户端)
蓝牙(CoreBluetooth)-中心设备(客户端) 蓝牙客户端-中心设备 主要内容 1. 创建`中央管理器` 2. 发现并且连接外设 3. 寻找连接上的外设数据 4. 发送读或写`特征值`的请求 ...
- 蓝牙 CoreBluetooth
baseK(相关基础知识)蓝牙常见名称和缩写 BLE:(Bluetooth low energy)蓝牙4.0设备因为低耗电,也叫BLEperipheral,central:外设和中心设备,发起链接的是 ...
- 蓝牙LMP概述
LMP 全称是Link Manager Protocol,我们还是要一张图,说明LMP 在哪里? 他是在HCI 以下,baseband 以上,实现在蓝牙控制器中. 按照协议规范,我们分几个部分来分别介 ...
- 蓝牙baseband概述
从蓝牙specispecification中看,基带协议主要分为8个部分来介绍的,分别是概述.物理信道.物理连接.逻辑传输.逻辑连接.封包.比特流的处理.组网行为.这里面会涉及到很多的概念,主要是在概 ...
- 蓝牙核心技术概述(四):蓝牙协议规范(HCI、L2CAP、SDP、RFOCMM)(转载)
一.主机控制接口协议 HCI 蓝牙主机-主机控模型 蓝牙软件协议栈堆的数据传输过程: 1.蓝牙控制器接口数据分组:指令分组.事件分组.数据分组(1).指令分组 如:Accpet Connection ...
- iOS蓝牙--CoreBluetooth基本使用
蓝牙使用步骤: 1. 扫描外设 2. 连接外设 3. 连上外设后,获取指定外设的服务 4. 获取服务后,遍历服务的特征,得到可读,可写等特征,然后与中心管理者进行数据交互 附上代码 一:导入框架 #i ...
- Qt 蓝牙部分翻译
这是我第一次尝试翻译技术文档,自己英语太烂,一直不敢尝试,感谢生活,让我勇敢迈出这第一步. 大部分都是直译,如有不妥,还请制导. Qt Bluetooth The Bluetooth API prov ...
随机推荐
- 怎么设置IDEA,去除单词拼写检查,或者添加自定义的单词
如图所示,添加自定义的单词,这样IDEA检查的时候,就不会报错了.估计默认是根据英文单词来释义的.
- IDEA/Pycharm/Webstorm项目目录中的 Scratches and Consoles作用
临时的文件编辑环境,通过临时的编辑环境,你可以写一些文本内容或者一些代码片段. 参考:https://segmentfault.com/a/1190000014202363 https://www.w ...
- (转载)如何学好iphone游戏开发
转自:http://www.cnblogs.com/zilongshanren/archive/2011/09/19/2181558.html 自从发布<如何学习iphone游戏开发>到 ...
- css实现半颗星评分效果
效果如下: html代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...
- scala之Actors
这多半是因为actor是共享线程,所以阻塞线程会导致其他线程获取不到线程.
- servlet中ServletConfig的使用
转自:http://www.zzzj.com/html/20090117/69483.html 前言 相对于ServletContext,ServletConfig是针对特定的Servlet的参数或属 ...
- 网页图表控件Highcharts选项配置参数
Highcharts提供大量的选项配置参数,您可以轻松定制符合用户要求的图表,目前官网只提供英文版的开发配置说明文档,而中文版的文档网上甚少,且零散不全.这里,我把Highcharts常用的最核心的参 ...
- 2014面试总结--java、数据 方向
这里不讲详细的题目.仅仅是总结一下体会. 好一点的公司考察的都比較全面,主要看你对原理性的理解.还有你的思维逻辑:就眼下来讲,对深度的考察大于广度.而我个人如今这个阶段也比較专注于深度. 列一些常常问 ...
- MySql sqlstate代码大全(转载)
http://blog.csdn.net/u013847120/article/details/52887813 本章列出了当你用任何主机语言调用MySQL时可能出现的错误.首先列出了服务器错误消息. ...
- org.eclipse.e4.core.di.InjectionException:org.eclipse.swt.SWTException: Widget is disposed
org.eclipse.e4.core.di.InjectionException:org.eclipse.swt.SWTException: Widget is disposed 开发环境为ecli ...