Core Bluetooth Programming Guide官方文档翻译<二>

版权声明:本文为博主原创文章,转载请声明出处,谢谢!

本文档的官方英文原版地址

核心蓝牙概述

核心蓝牙框架可以让你的iOS和Mac应用程序与蓝牙低功耗设备进行通信。例如,您的App可以发现、搜索并与低功耗外设进行交互,比如心率检测器和数字恒温器,甚至还可以和其他iOS设备进行交互。

为了使用蓝牙低功耗设备,这个框架对蓝牙4.0规范进行了抽象。换句话说,它隐藏了很多规范的细节,让开发者更容易开发与蓝牙低功耗设备进行交互的应用程序。因为核心蓝牙框架是基于蓝牙4.0规范的,因此一些来自该规范的概念和术语被核心蓝牙框架采纳了。本章主要向您介绍使用核心蓝牙框架开发优秀应用程序时需要了解的关键术语和概念。

重要提示:在iOS 10.0或之后链接的App必须在其Info.plist文件中包含它需要访问的数据类型的使用说明密钥,否则它将崩溃。要专门访问蓝牙外设数据,它必须包含NSBluetoothPeripheralUsageDescription。

中心设备和外设在蓝牙通信中扮演的角色

所有蓝牙低功耗通信都涉及到两个主要参与者:中心设备和外围设备。基于传统某种传统的客户端-服务器架构(即经典的C/S架构),外围设备通常具有其他设备所需要的数据。中心设备通常使用外围设备提供的信息来完成某些特定任务。例如,心率检测器可能包含您的Mac或iOS程序可能需要的有用信息,以便以用户友好的方式来显示用户的心率。


图1-1 中心设备和外围设备

中心设备发现并连接到正在广播数据的外围设备

外围设备以广播包的形式广播它们所拥有的一些数据。广播包是一个相对较小的数据包,可能包含有关外设必须提供的有用信息,例如外围设备的名字和主要功能。例如,数字恒温器可能会广播提供当前房间的温度。在低功耗蓝牙中,广播是外围设备展现它们的主要方式。

另一方面,中心可以扫描并监听那些正在广播它所感兴趣的信息的外围设备。如图1-2所示,中心设备可以要求连接到他发现广播的任何外围设备。


图1-2 广播和发现

如何构造外围设备的数据

连接外围设备的目的是开始检索并与它所提供的数据进行交互。然而,在你能够做到这一点之前,了解外围设备的数据结构对你是有帮助的。

外围设备可能包含一个或多个服务,或提供关于它连接的信号强度的有用信息。

posted @ 2018-06-29 23:58  信仰->  阅读(246)  评论(0编辑  收藏  举报