/ 北京千锋互联科技有限公司版权所有 iOS 开发中使用蓝牙技术去 App Store 搜索并下载**『 LightBlue 』** 这个 App , 对调试你的 app 和理解 Core Bluetooth 会很有帮助。## 蓝牙常见名称和缩写- **MFI** —— make for ipad ,iphone, itouch 专门为苹果设备制作的设备- **BLE** —— buletouch low energy , 蓝牙 设备因为低耗电, 所以也叫做 BLE - **peripheral,central** ——外设和中心, 发起连接的设备为 central , 被连接的设备为 perilheral - **service and characteristic** ——服务和特征, 每个设备会提供服务和特征, 类似于服务端的 api , 但是机构不同。每个设备都会有一些服务, 每个服务里面都会有一些特征, 特征就是具体键值对, 提供数据的地方。每个特征属性分为这么几种:读,写, 通知三种方式。- **Description** ——每个 characteristic 可以对应一个或多个 Description 用户描述 characteristic 的信息或属性 MFI ——开发使用 essory 框架 BLE ——开发使用 CoreBluetooth 框架## Core Bluetooth 概述 CoreBluetooth 框架能够让你的 iOS 和 Mac App 能够和支持 BLE 的设备进行通信。比如, 你的应用程序可以发现、搜索、以及和这些支持 BLE 的外围设备进行交互, 比如心率监测器、数字温控器,甚至其他的 iOS 设备。该框架基于 规范,直接适用于蓝牙低功率设备的使用。是对于蓝牙 规范的/ 北京千锋互联科技有限公司版权所有一个抽象, 该框架隐藏了很多开发规范的底层实现细节, 使您更容易开发出与蓝牙低功耗设备进行交互的 App 。因为该说明中涉及到蓝牙框架的一些概念和术语在本说明中已经被广泛采用,本文将向你介绍这个 Core Bluetooth 框架中的一些关键术语和概念。## 中央( Central ) 和外围设备( Peripheral ) 以及它们之间蓝牙通信的规则所有涉及蓝牙低功耗的交互中有两个主要的角色: 中心`Central` 和外围设备`Perpheral` 。根据一些传统的` 客户端- 服务端` 结构, `Peripheral` 通常具有其他设备所需要的数据,而`Central` 通常通过使用`Perpheral` 的信息来实现一些特定的功能。如下图所示,例如,一个心率监听器可能含有一些有用的信息,你的 Mac/iOS app 可能需要以用户友好的方式显示用户的心率。### Central 发现并连接广播中的 Peripheral Peripheral 向外广播一些广告包(Advertising) 形式的数据, 广告包是一个相对较小的、捆绑了外围可能包含的有用信息且必须提供的数据包, 如外设的名称和主要功能。例如, 一个数字温控器可能广播它能提供当前房间的温度。在低功耗蓝牙中,广播是 Periphera l 被获知的主要方式。/ 北京千锋互联科技有限公司版权所有另一方面说, Central 可以扫描和监听任何对广播内容感兴趣的 Peripheral 。如下图, Central 可以请求连接任何已对外广播内容的 Peripheral 。### 数据在 Peripheral 中如何构成连接到 Peripheral 的目的是为了对它所提供的数据进行探索和交互。在此之前,理解数据在 Peripheral 中是怎样构成的将会对我们有所帮助。 Peripheral 包含一个或者多个 Service ( 服务) 以及有关其连接信号强度的有用信息。 Service 是指为了实现一个功能或者特性的数据采集和相关行为的集合。例如, 一个心率监听器的 Service 可能包含从监听心率传感器采集的心率数据。 Service 本身由 Characteristic ( 特征) 或者包含其他被引用的 Service 组成。 Characteristic 提供了 Peripheral 的 Service 更多细节。例如,刚才描述的心率 servic e 中包含一个用来描述心率传感器位置信息的 characteristic 和另外一个发送测量心率数据的 Characteristic ( 即这个服务包含了两个特征)。如下图阐述了一个心率监测器的服务和特征的数据可能的结构和特点。/ 北京千锋互联科技有限公司版权所有### Central 在 Peripheral 上的数据探索及交互在
iOS开发中使用蓝牙技术 来自淘豆网m.daumloan.com转载请标明出处.