iOS CoreBluetooth的swift实现 (3)

iOS CoreBluetooth的swift实现 (1)

iOS CoreBluetooth的swift实现 (2)

那么上一篇我们讲到了用peripheral的方法获得characteristic,下面我们就来读取他,废话不多说,直接上代码。

iOS CoreBluetooth的swift实现 (3)_第1张图片

如果数据是不可读的,那么可以通过枚举

CBCharacteristicPropertyRead的options

CBCharacteristicPropertyNoifyoptions的options

来进行判断。

数据的写入

数据写入的话完全可以和数据的读取做一下类比。

CBPeripheral有方法writeValue(NSData, forCharacteristic:CBCharacteristic, type:CBCharacteristicWriteType) 最后一个参数我们可以选择CBCharacteristicWriteWithResponse,这样写入成功后就可以回调

func peripheral(peripheral:CBPeripheral, didWriteValueForCharacteristic characteristic:CBCharacteristic, error:NSError?)

是不是很简单?

简单才有鬼啊!

数据的类型一定要搞好啊!怎么调也找不到正常的样子啊!用NSData保存value后发现一脸萌比啊!总之数据转换开始做时一定要注意好,不然还是调试挺久的

所以推荐神器LightBlue

有了它,可以方便查看uuid和相关数据的不同类型格式的取值,功能非常友好。

iOS CoreBluetooth的swift实现 (3)_第2张图片
iOS CoreBluetooth的swift实现 (3)_第3张图片

下一篇我们来讲讲如何优化

你可能感兴趣的:(iOS CoreBluetooth的swift实现 (3))