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苹果官方文档翻译名称 博文链接地址 ...
随机推荐
- Web系统如何做到读取客户电脑MAC等硬件信息且兼容非IE浏览器
我们在实际Web应用中,可能会遇到“需要限定特定的电脑或用户才能使用系统”的问题. 对于一般情况来说,我们用得最多的可能是使用ActiveX控件的方法来实现,但此方案只适用于IE浏览器.为了能兼容不同 ...
- 上传图片预览,支持IE6
//说明:图片上传预览插件 //上传的时候可以生成固定宽高范围内的等比例缩放图 //参数设置: //width 存放图片固定大小容器的宽 //height 存放图片固定大小容器的高 //imgDiv ...
- TextField详细用法
http://www.cnblogs.com/VincentXue/archive/2012/08/28/2660001.html
- c++ 指针的简单用法
对于指针,其实只需要明白几点就可以. 1.指针,是一个数值为地址的变量,这里尤其注意,指针变量的值是地址!就是例如40002这种像门牌号的地址值,其实就是内存中的一个编号. 2.&,该符号的意 ...
- codeforces 505B Mr. Kitayuta's Colorful Graph(水题)
转载请注明出处: http://www.cnblogs.com/fraud/ ——by fraud Mr. Kitayuta's Colorful Graph Mr. Kitayut ...
- vs2010中的外部依赖项的含义
vs2010中的项目下拉列表下面有外部依赖项,里面显示的文件是你程序中显示包含的头文件所包含的的头文件.比如,你的main函数里面包含了windows.h头文件,而windows.h头文件又包含其他头 ...
- 'data-'属性的作用是什么?
data-为前端开发者提供自定义的属性,这些属性集可以通过对象的dataset属性获取,不支持该属性的浏览器可以通过 getAttribute方法获取.ppk提到过使用rel属性,lightbox库推 ...
- struts2的注解配置全面解析
以前在用struts2的注解配置时总是要在web.xml中配置一个初始化参数(actionPackages),最近发现不灵了,仔细研究了下发现即使不用在web.xml中配置也能成功,但时灵时不灵的,很 ...
- php正则验证sql方注入
<?php function inject_check($Sql_Str) {//自动过滤Sql的注入语句. $check=preg_match('/select|insert|update|d ...
- POJ 1020 Anniversary Cake(DFS)
Anniversary Cake Time Limit: 1000MSMemory Limit: 10000KB64bit IO Format: %I64d & %I64u Submit St ...