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

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

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

关于核心蓝牙

重要提示:本文档不再更新。有关Apple SDK的最新信息,请访问[文档网站](https://developer.apple.com/documentation)

核心蓝牙(Core Bluetooth)框架提供了iOS和Mac应用程序与配备了低功耗蓝牙无线技术的设备进行通信所需的类。例如,你的App可以发现、搜索并与低功耗外设进行交互,比如心率检测器和数字恒温器。从macOS 10.9和iOS 6开始,Mac和iOS设备也可以作为蓝牙低功耗外设为其他设备(包括Mac和其他iOS设备)提供数据。

概述

蓝牙低功耗无线技术基于蓝牙4.0规范,除了该规范以外,它还定义了一组用于低功耗设备进行通信的协议。核心蓝牙框架对蓝牙低功耗协议栈进行了抽象。也就是说,它隐藏了很多底层的规范细节,让开发人员更容易开发与蓝牙低功耗设备进行交互的应用程序。

中心(Centrals)和外设(Peripherals)是核心蓝牙的主要参与者

在蓝牙低功耗通信中,有两个主要的参与者,中心外围设备,每个参与者扮演着不同的角色。外设通常具有其他设备所需要的数据,而中心通常使用由外设提供的信息来完成某项任务。例如,配备了蓝牙低功耗技术的数字恒温器可以为iOS应用提供房间的温度,iOS应用则可以以友好的方式来显示温度。

每个参与者在扮演其角色时执行一组不同的任务。外设通过广播数据来展示他们的存在,中心则可以扫描附近它所感兴趣的外设。当中心发现这样的外设时,中心就可以请求连接到该外设并开始检索外设的数据(服务和特征)并与之交互,外设则负责以适当的方式来响应中心的请求。

相关章节:核心蓝牙概述

核心蓝牙简化常见的蓝牙任务

核心蓝牙框架从蓝牙4.0中抽象了很多底层细节,因此,您需要在App中实现的很多蓝牙低功耗任务都得到了简化。如果您正在开发一个App来实现中心角色,核心蓝牙可以轻松发现和连接外设,并检索外设数据与之进行交互。此外,核心蓝牙使得您可以轻松设置本地设备来实现外设角色。

相关章节:执行常见的中心角色任务,执行常见的外设角色任务

iOS应用程序状态影响蓝牙的行为

当您的iOS应用处于后台或挂起状态时,其蓝牙相关任务会受到影响。默认情况下,您的应用在后台处于挂起状态时无法执行蓝牙低功耗任务。也就是说,如果您的应用需要在后台执行蓝牙低功耗任务,您可以声明它支持核心蓝牙后台执行模式(其中一个用于中心角色,另一个用于外设角色)中的一个或两个。即使您声明了其中一种或两种后台执行模式,某些蓝牙任务在您的应用处于后台时的操作也会有所不同。您在设计应用时需要考虑到这些差异。

即使是支持后台处理的应用程序,系统也可随时终止它为当前前台应用程序释放内存。从iOS 7开始,Core Bluetooth支持保存中心和外设对象的状态信息,并在应用程序启动时恢复该状态。您可以使用此功能来支持涉及蓝牙设备的长期操作。

相关章节:iOS应用程序的核心蓝牙后台处理

遵循最佳实践来增强用户体验

核心蓝牙框架可让您的应用程序控制许多常见的蓝牙低功耗事务。遵循最佳实践,以负责任的方式利用此级别的控制并提高用户体验。

例如,执行中心或外设角色时执行的许多任务都会使用设备的机载无线电传输信号。由于您的设备无线电与其他形式的无线通信共享,并且由于使用无线电会对设备的电池寿命会产生不利影响,因此请始终设计您的应用程序以尽量减少使用无线电的次数。

相关章节:与远程外围设备交互的最佳实践,将本地设备设置为外围设备的最佳实践

如何使用此文档

如果您从未使用过核心蓝牙框架,或者您不熟悉基本的蓝牙低功耗概念,请阅读本文档的完整内容。在“核心蓝牙概述”中,您将会学习本书其余部分需要了解的关键术语和概念。

在了解了关键概念之后,请阅读执行通用中心角色任务以了解如何开发应用程序以在本地设备上实现中心角色。 同样,要了解如何开发应用程序以在本地设备上实现外设角色,请阅读执行通用外设角色任务。

为确保您的应用运行良好并遵循最佳实践,请阅读后面的章节:适用于iOS应用的核心蓝牙后台处理,与远程外设交互的最佳实践以及将本地设备设置为外围设备的最佳实践 。

也可以看一看

官方蓝牙特别兴趣小组(SIG)网站提供有关蓝牙低功耗无线技术的确切信息。在那里,你还可以找到蓝牙4.0规范 。

如果您正在设计使用蓝牙低耗能技术与Apple产品(包括Mac,iPhone,iPad和iPod touch型号)通信的硬件配件,请阅读Apple产品的蓝牙配件设计指南。如果您的蓝牙配件(通过蓝牙低功耗链路连接到iOS设备)需要访问在iOS设备上生成的通知,请阅读Apple通知中心服务(ANCS)规范 。

下一篇:Core Bluetooth Programming Guide官方文档翻译<二>

posted @ 2018-05-31 23:48  信仰->  阅读(241)  评论(0编辑  收藏  举报