OABluetooth
OABluetooth 是一个轻量级的基于 Apple 的 CoreBluetooth 框架,适用于 ios 和 OSX,可以独立管理不同类型的周边设备,支持在断开连接后自动重新连接。支持事件和通信的块回调。
OABluetooth 将所有类型的服务、特性和描述(由 CBService、CBCharacteristic 和 CBDescriptor 表示)映射为 OABTPort
,您将不再需要为维护这些内容而烦恼。与基于 CoreBluetooth 的 连接→发现服务→发现特征→[发现描述]-→数据传输 的通信建立过程相比,OABluetooth 将其简化为 连接→数据传输,所有其他工作都将自动完成。更多功能请参阅 此处。
OABluetooth 是一个基于苹果的 CoreBluetooth 开发的轻量级蓝牙外设管理框架,可以同时支持 iOS 和 OSX 系统。OABluetooth 支持独立管理不同类型的设备列表,断开后自动重新连接。
OABluetooth 将所有特性和描述映射为通信端口 OABTPort
,使您不必再为维护不同的 CBService/CBCharacteristic/CBDescriptor 而烦恼。重要的是,与传统的 连接→发现服务→发现特征→[发现描述]-→通信 的基于 CoreBluetooth 的通信建立过程相比,OABluetooth 提供了完美的“一站式”服务,建立连接后直接通信即可,其余工作都自动完成。更多信息请参阅 功能清单。
由于作者精力有限,目前只支持 iOS/OSX 设备作为中心模式(应该能满足 90%以上的应用场景),iOS/OSX 设备作为周边设备模式将在以后有机会添加。
功能
- 支持不同类型的周边列表管理
- 自动扫描和重新连接周边设备
- 支持所有类型的事件和数据通信的块回调
- 大幅简化通信过程
- 自动将大数据分装成小包以供写入
- 使用 CBPeripheral 分类简单易用
- 无需再维护CBService/KBCharateristic/KBDescriptor
- 支持同时管理多个不同类型的BLE外围设备列表
- 支持自动扫描,断开后自动重连
- 所有事件都支持BLOCK回调
- 提供了完美的通讯“一条龙”服务
- 支持长数据自动分段发送
- 简单的接口,所有通讯接口都是基于CBPeripheral分类实现
- 免去了对服务/特征/描述维护的麻烦,所有通信都映射为端口
- 简单易用!简单易用!简单易用! 重要的事情说三遍
用法
OABluetooth非常简单易用,你需要的所有接口都在以下3个类/分类中定义
OABTCentralManager
:一个管理外设扫描、连接/断开连接、事件通知的类。所有功能和方法的注释都写在OABTCentralManager.h
文件中CBPeripheral (OABLE)
是CBPeripheral分类,实现了数据写/读/通知和其他一些有用方法,CBPeripheral+OABLE.h
文件中的API都有详细注释OABTPort
代表用于与CBPeripheral通信的CBCharateristic或CBDescriptor类型,详见OABTPort.h
文件中的注释
OABluetooth的使用非常简单,你所需要的所有接口都定义在以下三个类/分类中
OABTCentralManager
:外设管理的类,负责外设的扫描、连接以及状态管理,OABTCentralManager.h
文件中对每个接口都有详细说明CBPeripheral (OABLE)
:一个CBPeripheral分类,实现了所有数据读/写/通知等与外设相关的通讯,CBPeripheral+OABLE.h
文件对接口都有详细注释OABTPort
:通讯端口,代表CBCharateristic或CBDescriptor,OABTPort.h
文件中对如何定义一个端口有详细说明
需求
ios 8.0, OSX 10.1
安装
OABluetooth可以通过CocoaPods获取。要安装它,只需在Podfile中添加以下行
pod 'OABluetooth'
作者
许可证
OABluetooth可在MIT许可下使用。有关更多信息,请参阅LICENSE文件。