
CBPeripheralManager对象,被用于:管理本地外设(peripheral)设备的通用属性档案(Generic Attribute Profile)(GATT)数据库中那些被发布出去的服务,并且向中央(central)设备(由 CBCentral 对象表示)广播这些服务。当一个服务已经处于该数据库中时,它就可被任何已连接的中央设备发现及访问。不过勒,如果妳的应用程序没有指定 bluetooth-peripheral 这个后台模式,则,当程序处于后台或停顿(suspended)状态时,它的服务的内容也会被禁用;任何中央设备想要访问该服务的特性值或特性描述对象(descriptors)时,都会返回错误报告。
在妳调用CBPeripheralManager 的方法之前,要先检查确认该外设管理器对象的状态为启用状态,即其状态值为 CBPeripheralManagerStatePoweredOn 。这个状态意味着,这个外设设备(例如,妳的iPhone 或 iPad)支持蓝牙低功耗(Bluetooth low energy),并且蓝牙处于打开状态,因而是可用的。
此外设管理器的当前状态。(只读)
@property(readonly) CBPeripheralManagerState state
当一个外设管理器对象刚被创建时,此属性的默认值会 CBPeripheralManagerStateUnknown 是。当此外设管理器的状态发生改变时,它会更新这个属性的值,并且调用它的代表(delegate)对象的 peripheralManagerDidUpdateState: 方法。参考“外设管理器状态”,以了解外设管理器的状态的可能取值。
•.在iOS 6.0 及更高版本的系统中可用。
•. 蓝牙低功耗中央外设传输
CBPeripheralManager.h
这些值表示着外设管理器的当前状态。
typedef enum {
CBPeripheralManagerStateUnknown = 0,
CBPeripheralManagerStateResetting,
CBPeripheralManagerStateUnsupported,
CBPeripheralManagerStateUnauthorized,
CBPeripheralManagerStatePoweredOff,
CBPeripheralManagerStatePoweredOn,
} CBPeripheralManagerState;
CBPeripheralManagerStateUnknown
此外设管理器的当前状态为未知;稍后就会有状态更新。
在iOS 6.0 及更高版本的系统中可用。
在CBPeripheralManager.h 中声明。
CBPeripheralManagerStateResetting
临时出故障,与系统服务断开了连接;稍后就会有状态更新。
在iOS 6.0 及更高版本的系统中可用。
在CBPeripheralManager.h 中声明。
CBPeripheralManagerStateUnsupported
此平台不支持蓝牙低功耗外设/服务器角色。
在iOS 6.0 及更高版本的系统中可用。
在CBPeripheralManager.h 中声明。
CBPeripheralManagerStateUnauthorized
此应用程序未被允许使用蓝牙低功耗外设/服务器角色。
在iOS 6.0 及更高版本的系统中可用。
在CBPeripheralManager.h 中声明。
CBPeripheralManagerStatePoweredOff
蓝牙已经被关闭。
在iOS 6.0 及更高版本的系统中可用。
在CBPeripheralManager.h 中声明。
CBPeripheralManagerStatePoweredOn
蓝牙已经开启,并且可用。
在iOS 6.0 及更高版本的系统中可用。
在CBPeripheralManager.h 中声明。
未知美人
HxLauncher: Launch Android applications by voice commands