iOS蓝牙开发要点

1.名词

中心与外围设备,中心指处理服务的蓝牙设备,一般就是iPhone手机,外围是指包含蓝牙功能的设备,比如手环、手表耳机等,一个外围设备可以发布多个服务,一个服务可以包含一个或多个特征,一个特征就是一个key-value键值对

2.iOS中的实现

中心:用CBCentralManager表示

外围设备:用CBPeripheral表示

服务:用CBService表示,服务使用UUID字段来标识,使用CBPeripheral的services属性来获取设备的所有服务

特征:用CBCharacteristic表示,跟服务一样,特征也使用UUID字段来标识,特征有多个特性:可读,可写,广播,通知等等,通过特征的value字段获取该特征的实际值。

3.流程

3.1 创建CBCentralManager实例,设置delegate

3.2 监听蓝牙状态

3.3 调用 startScan开始扫描设备

3.4 在didDiscoverPeripheral回调中处理外围设备

3.5 调用connectPeripheral连接外围设备

3.6 在didDiscoverServices回调中处理服务

3.7 在didDiscoverCharacteristicsForService回调中处理特征

3.8 使用writeValue:(NSData *)data forCharacteristic:(CBCharacteristic *)characteristic type:(CBCharacteristicWriteType)type发送数据

3.9 如有需要,在peripheral:(CBPeripheral *)peripheral didWriteValueForCharacteristic:(CBCharacteristic *)characteristic error:(nullable NSError *)error回调中监听发送数据结果

4.注意事项

4.1 大小端字节顺序转换,iOS NSData字节顺序跟网络字节顺序相反,因此需要做转换

4.2 一次发送数据不要太大,否则发送失败,数据太大要分包发送

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值