Core Bluetooth 概述 【官方文档翻译】
Core Bluetooth 框架在Mac和iOS平台,为配备了低功耗蓝牙无线技术的设备提供了进行通信所需要的类。例如,您的应用程序可以发现,探索,和低功耗的外围设备进行交互,如心率监视器、数字温控器。作为OS X v10.9和iOS 6,Mac和iOS设备也可以作为低功耗蓝牙外设,提供服务数据到其他设备,包括其他的Mac和iOS设备。
快速导读
蓝牙低功耗无线技术是基于蓝牙4.0规范,其中,除其他事项外,定义了一组协议的低能量的设备之间的通信。核心蓝牙框架是蓝牙低功耗协议堆栈的抽象。这就是说,它隐藏了很多从你的规范,开发商的低层细节,使其更容易为您制定与蓝牙低功耗设备交互的应用程序。
Core Bluetooth的两个关键名词:中央和外设
在蓝牙低功耗通信,有两个关键球员:中央和外围设备。每个球员都有不同的作用。外围通常具有由其它设备所需要的数据。中央通常使用由外围担任了完成一些任务所需的信息。例如,配备了蓝牙低功耗技术的数字温控器可以提供一个房间到iOS应用程序,然后显示在用户友好的方式温度的温度。
每个球员履行其角色时执行一组不同的任务。外设使他们的存在通过宣传他们对空气中的数据闻名。切牙扫描附近的外围设备可能有他们感兴趣的数据。当一个中央发现的这样的周边,中央请求连接到外围并开始探索和与外围的数据交互。外围负责响应中央以适当方式。
核心蓝牙简化常见的蓝牙任务
核心蓝牙框架抽象远离蓝牙4.0规范中的低层细节。其结果是,许多需要在你的应用程序来实现共同的蓝牙低耗能的任务是简化。如果你正在开发一个实现了核心作用的应用程序,蓝牙核心可以很容易地发现和外设连接,并探讨与外设的数据交互。此外,蓝牙核心可以轻松地设置您的本地设备来实现外设的角色。
iOS应用程序状态会影响蓝牙的行为
当你的iOS应用会在后台或处于暂停状态,其蓝牙相关的能力受到影响。默认情况下,您的应用程序无法执行蓝牙低功耗任务,同时它是在背景或处于暂停状态。也就是说,如果您的应用程序需要执行蓝牙低功耗任务,同时在后台,你可以声明它支持蓝牙核心后台执行模式中的一种或两种(有一个核心作用,一个外设角色)。甚至当你宣布一个或两个背景执行模式,某些蓝牙任务的运作方式不同,而你的应用程序是在后台。你想设计自己的应用程序时考虑这些差异考虑在内。
即使是支持后台处理的应用程序可以通过该系统随时终止以释放内存当前前台应用程序。由于iOS的7,核心支持蓝牙节省中枢和外周Manager对象的状态信息,并在应用程序启动时恢复该状态。您可以使用此功能支持包括蓝牙设备长期行动。
遵循最佳做法,以提升用户体验
蓝牙框架给出了许多常见的蓝牙低功耗的方法控制 你的应用程序。按照最佳做法,利用这种级别的控制以负责的方式,增强了用户的体验。
例如,许多你通过中央或外围时执行的任务使用设备的板载电台在空中传输信号。由于设备的无线电与其他形式的无线通信的共享,而且由于无线电使用对设备的电池寿命有不良影响,设计自己的应用程序,以尽量减少使用收音机。
如何使用本文档
如果你从来没有使用过Core蓝牙框架,或者如果您不熟悉基本的蓝牙低能量的概念,完整阅读本文件。在核心蓝牙概述,你知道你需要知道的书的其余部分关键术语和概念。
你理解了关键概念后,请阅读执行常见中央角色任务,以学习如何开发你的应用程序来实现您的本地设备上的核心作用。同样,要了解如何开发你的应用程序来实现您的本地设备上的外围角色,阅读执行常见外设角色任务。
为确保您的应用程序运行良好并秉承最佳实践,看后面的章节:对于iOS应用蓝牙核心后台处理,最佳实践与远程外围设备交互,以及最佳实践设置本地设备作为外设。
Core Bluetooth 概述 【官方文档翻译】的更多相关文章
- Core Bluetooth【官方文档翻译】【02】
1.中心设备和外围设备以及它们在蓝牙通讯中的角色. 在所有的BLE( Bluetooth low energy,下文简称蓝牙4.0 )通讯中都涉及2个主要的角色:中心设备和外围设备.它是基于传统的客户 ...
- Core BlueTooth官方文档翻译
本⽂文是苹果<Core Bluetooth Programming Guide>的翻译. 关于Core Bluetooth Core Bluetooth 框架提供了蓝⽛牙低功耗⽆无线设备与 ...
- Salt Stack 官方文档翻译 - 一个想做dba的sa - 博客频道 - CSDN.NET
OSNIT_百度百科 Salt Stack 官方文档翻译 - 一个想做dba的sa - 博客频道 - CSDN.NET Salt Stack 官方文档翻译 分类: 自动运维 2013-04-02 11 ...
- Spring官方文档翻译(1~6章)
Spring官方文档翻译(1~6章) 转载至 http://blog.csdn.net/tangtong1/article/details/51326887 Spring官方文档.参考中文文档 一.S ...
- AVFoundation Programming Guide(官方文档翻译4)Editing - 编辑
新博客:完整版 - AVFoundation Programming Guide 分章节版:- 第1章:About AVFoundation - AVFoundation概述- 第2章:Using A ...
- Spark官方文档翻译(一)~Overview
Spark官方文档翻译,有问题请及时指正,谢谢. Overview页 http://spark.apache.org/docs/latest/index.html Spark概述 Apache Spa ...
- CALayer---iOS-Apple苹果官方文档翻译之CALayer
CHENYILONG Blog CALayer---iOS-Apple苹果官方文档翻译之CALayer CALayer /*技术博客http://www.cnblogs.com/ChenYilong/ ...
- iOS数据存取---iOS-Apple苹果官方文档翻译
CHENYILONG Blog iOS数据存取---iOS-Apple苹果官方文档翻译 数据存取/*技术博客http://www.cnblogs.com/ChenYilong/ 新浪微博http:// ...
- iOS7开发-Apple苹果iPhone开发Xcode官方文档翻译PDF下载地址(2014年2月19日更新版)
//转载请注明出处--本文永久链接:http://www.cnblogs.com/ChenYilong/p/3496069.html 编号 iOS-Apple苹果官方文档翻译名称 博文链接地址 ...
随机推荐
- UML学习-状态图
1.状态图概述 状态图(Statechart Diagram)主要用于描述一个对象在其生存期间的动态行为,表现为一个对象所经历的状态序列,引起状态转移的事件(Event),以及因状态转移而伴随的动作( ...
- 关于Emit中动态类型TypeBuilder创建类标记的一点思考
利用TypeBuilder是可以动态创建一个类型,现在有个需求,动态生成一个dll,创建类型EmployeeEx,需要继承原dll里面的Employee类,并包含Employee类上的所有类标记. ...
- eclipse中Java代码导入包,出现main.java前缀
1.工程右击,按照下图指示的选择 2.按照下图,进行删除选中项,然后点击OK保存
- IOS开发几何类方法 CGGeometry.h文件
CGGeometry.h文件是用C语言实现的一个封装了许多常用几何方法的文件. 一.几个常用结构体 struct CGPoint { CGFloat x; CGFloat y; }; 定义一个点,设置 ...
- CMarkUp读写XML(转)
Fast start to XML in C++ Enough bull. You want to create XML or read and find things in XML. All you ...
- javascript 数组学习(一)
今天学习了一下<javascript权威指南(第6版)>的第七章:数组 一.数组的创建: 数组的创建有3种方法: var colors = new Array(3);//可以省略new v ...
- Ecstore的微信账号绑定会员免登录
在微信公众号中通过消息交互/自定义菜单,可直接登录Ecstore手机商城.如果想用原商城账号登录,可以通过登录绑定,在后台可以获取登录绑定的链接这个链接可以在微信公众号消息交互场景或自定义菜单中使用, ...
- Ecstore 2.0 报表显示空白
INSERT INTO `sdb_ectools_analysis` (`id`, `service`, `interval`, `modify`) VALUES (, ), (, ), (, ); ...
- ACM题目推荐(刘汝佳书上出现的一些题目)[非原创]
原地址:http://blog.csdn.net/hncqp/article/details/1758337 推荐一些题目,希望对参与ICPC竞赛的同学有所帮助. POJ上一些题目在http://16 ...
- linux中如何使用微软鼠标的第4、5键
虽说使用linux的 人大都对微软没什么好感,但不能否认微软确实也出了不少好东西呀,比如微软鼠标(IE系列) icon_smile.gif IE 2.0和以上版本都有5个按钮,除了正常的左中右外,两侧 ...