iOS-Core Bluetooth(API Reference) of first part

7 篇文章 0 订阅

Core Bluetooth

蓝牙4.0低能量设备通信


Overview

Core Bluetooth framework提供了你的app和设备所需要的类,装备着蓝牙低能量无线技术

不要用任何类作为Core Bluetooth framework的子类。重写这个类是不支持的和结果是没有定义的行为。

Important 
iOS app链接在iOS10.0之后必须包括用户描述keys为这个类型数据在Info.plist文件,否则它将crash,Bluetooth peripheral 数据说明,它必须包括NSBluetoothPeripheralUsageDescription.

NSBluetoothPeripheralUsageDescription

NSBluetoothPeripheralUsageDescription (String - iOS) 这个Key让你描述使用Bluetooth的原因. 当系统提示用户允许使用,你提供的这个key作为提示框的的一部分显示出来.

Symbols ['sɪmb(ə)l] 象征,代表


Classes

1.CBATTRequest

The CBATTRequest class 代表 Attribute Protocol (ATT) 从远程中央设备读取和写入 (通过 CBCentral 对象). 远程中央设备使用 ATT 请求 读取和写入 characteristic 值 在本地的外围设备(通过 CBPeripheralManager 对象). 本地的外围设备, 另一方面, CBATTRequest对象的属性适当的响应读取和写入请求, 使用CBPeripheralManager类的响应(to:withResult:)方法

2.CBAttribute

CBAttribute是一个抽象的基类,它定义了行为普遍的对象集合的代表服务提供的一个外围的方面。

3.CBCentral

CBCentral类代表远程中央设备连接到一个app在本地设备上实现外围的作用。也就是说,当你使用CBPeripheralManager类,实现peripheral角色,连接到您的本地周边表示CBCentral对象。远程CBCentral确定了全局唯一标识符(uuid),由NSUUID对象.

4.CBCentralManager

CBCentralManager 对象发现,连接 peripheral devices (代表CBPeripheral objects),包括搜索、发现、连接 peripherals.

5.CBCharacteristic

CBCharacteristic 和他的子类 CBMutableCharacteristic 代表更深一层关于 peripheral’s service的信息. CBCharacteristic 对象 特别代表远程 peripheral’s service 的特点(远程peripheral 代表CBPeripheral objects). 一个特性包含一个单一的值和任意数量的描述符描述该值. characteristic的这个属性可以确定characteristic能否被使用和描述符是否能访问.

6.CBDescriptor

 CBDescriptor 和它的子类 CBMutableDescriptor 代表peripheral’s characteristic的描述符. CBDescriptor 对象特别的代表 一个远程 peripheral’s characteristic 的描述符. Descriptors 提供更深一层的关于characteristic’s 值. 例如, 它可能描述 readable 的形式和描述应该如何将这个格式化。特征描述符也显示特征值是否在server上配置(a peripheral)来指示或通知客户(a central)当characteristic的值改变。

7.CBManager

 这个抽象的基类表示蓝牙管理者对象(central and peripheral).

8.CBMutableCharacteristic

 CBMutableCharacteristic对象代表一个当地的peripheral’s  service的特性集合 (当地的peripheral devices 是 代表CBPeripheralManager 对象). 这个类增加了写入访问的许多属性This class adds write access to many of the properties ,它继承自CBCharacteristic.

9.CBMutableDescriptor

 CBMutableDescriptor 对象 代表一个本地的 peripheral’s 特性集合 (当地的 peripheral devices 是 代表 CBPeripheralManager 对象).

10.CBMutableService

 CBMutableService 类增加了写入访问属性 在它继承自CBService的基础上. 你使用这个类去创建一个service或者一个包含service的local peripheral device  (represented by a CBPeripheralManager object). 你创建一个 service之后, 你可以增加它到当地的数据库使用 CBPeripheralManager 类的 add(_:) 方法. 你在一个peripheral’s 当地的数据库增加一个service后, 这个 service是缓存的和你可以不再改变它.

11.CBPeer

CBPeer类是一个抽象的,定义普通行为的基类代表 远程 devices. 你通常不创建CBPeer或其具体子类的实例。相反,系统为你在发现peer的过程中创造它们.

12.CBPeripheral

CBPeripheral 类代表远程 peripheral devices,你的app意义上是一个中央管理者 (CBCentralManager 实例)—发现广播后者是已经连接. Peripherals 确定了唯一标识身份(UUIDs), 代表 NSUUID 对象. Peripherals 大概包含一个或者多个services或者提供有利的信息关于连接信号强度.

13.CBPeripheralManager

CBPeripheralManager 对象管理services,发表当地的 peripheral device’s 通用属性配置文件 (GATT) 数据库和广播 这些services 到中央 设备 (代表CBCentral 对象).而一个service 在数据库中, 它是可见的和可以获得的, 任何连接中央. 如果你的app没有指定 if  bluetooth-peripheral 后台模式, 其服务的内容是禁止的,当它在后台后者暂停的状态, 任何远程中央尝试访问service的characteristic值或者characteristic 描述符接收到的是错误的.

14.CBService

CBService 它的子类 CBMutableService代表一个peripheral’s service—一个集合数据和相关行为完成一个功能或者特性为一个设备(或者一部分设备). CBService 对象特别的代表一个远程设备的service(represented by a CBPeripheral object). 服务是主要或次要和可能包含一些characteristic或包括services(引用其他service).

15.CBUUID

CBUUID类的实例代表128位全局唯一标识符(uuid)属性中使用蓝牙低能量沟通,比如a peripheral’s services, characteristics, and characteristic descriptors。这个类提供了许多工厂方法来处理在开发应用程序时长的uuid。例如,在代码中而不是传递的字符串表示128位蓝牙低能量属性,您可以创建一个CBUUID对象代表它。

Protocols


1.CBCentralManagerDelegate

CBCentralManagerDelegate 协议定义的方法CBCentralManager对象必须采用 . 协议中 optional 方法 允许 监测 发现, 连接, 和检索 peripheral devices. 唯一需要实现的方法定义是获得 central manager, 和当central manager’s 状态改变时调用.

2.CBPeripheralDelegate

CBPeripheral 对象必须采用 CBPeripheralDelegate 协议. 协议监测发现,探索,和检索远程 peripheral’s services and 属性. 没有必须实现的方法

3.CBPeripheralManagerDelegate

CBPeripheralManager 对象必须采用 CBPeripheralManagerDelegate 协议,协议中有许多可选择的方法和一个必须实现的方法. 协议中可选的方法来验证出版和广告,和监控读取,写入,和订阅请求从远程central devices。必须实现的协议方法,表明peripheral manager是否可用,当 peripheral manager’s 状态改变时调用.

Reference


Core Bluetooth Constants
本文档描述了蓝牙核心框架中的常数。

Core Bluetooth Enumerations


Structures


CBATTError



CBAttributePermissions
代表读取写入和加密权限为一个 characteristic’s value.


CBCharacteristicProperties
代表的可能的属性特征。因为可以组合特征属性,可以设置多个特性属性值


[CBError](https://developer.apple.com/reference/corebluetooth/cberror)

See Also


Related Documentation

Core Bluetooth Programming Guide

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有头发的猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值