最近开始学IOS开发,正做蓝牙测试。我们有4.0外设,用pad连接,接收数据。在接收数据过程中,还是遇到了问题:用readValue后读不到value的值。困扰了大半天,现在分享下解决心得,供其他新手参考。由于本人也是水货,写的不好的地方请提出讨论,勿喷。
程序中,搜索设备,搜service UUID ,找characteristic 等就不讲了,这方面网上资料还是挺多的。现在就说下数据接收:
前过程省略,假设我们一直做到了这里,
- (void)peripheral:(CBPeripheral *)peripheral
didDiscoverCharacteristicsForService:(CBService *)service
error:(NSError *)error
当发现了我们所需要的characteristic,我们最想做的就是查看下这个characteristic的value是多少。也就是说,我们需要一个接收数据的操作。
在CoreBluetooth中,提供了两种方法:
1. [peripheral readValueForCharacteristic:characteristic];