我正在使用iOS核心蓝牙应用程序,我可以使用iPad3与BLE设备连接.我能够到达didDiscoverServices的块,但无法从这里进行.
我的问题是
>如何从蓝牙设备读取特性?
>如何阅读蓝牙设备的其他信息?
帮助我这个或提供任何建议.
感谢Wilhelmsen的回复.
我从上面的框中得到以下内容:
[0] - Service : <CBConcreteService: 0x1769a0> UUID: Generic Attribute Profile [1] - Service : <CBConcreteService: 0x174470> UUID: Generic Access Profile [2] - Service : <CBConcreteService: 0x1744e0> UUID: Unknown (<00005301 00000041 4c505749 53450000>) Characteristic [0] - Characteristic : <CBConcreteCharacteristic: 0x15d410> UUID: Service Changed [0] - Characteristic : <CBConcreteCharacteristic: 0x1805b0> UUID: Device Name [1] - Characteristic : <CBConcreteCharacteristic: 0x1806a0> UUID: Appearence [0] - Characteristic : <CBConcreteCharacteristic: 0x183810> UUID: Unknown (<00004301 00000041 4c505749 53450000>) [1] - Characteristic : <CBConcreteCharacteristic: 0x1838a0> UUID: Unknown (<00004302 00000041 4c505749 53450000>)
现在如何从doUpdateValueForCharacteristic块中得到这个特征的确切值?
解决方法
通过框架看一个很好的阅读.如果你已经来到这里,你不应该发现’discoverCharacteristics’和外围代理回调’didDiscoverCharacteristic’.您需要知道您想要发现的服务和特性的UUID并将其应用于这些方法.
然后,您可以使用’readValueForCharacteristic’和委托回调’didUpdateValueForCharacteristic’进行读取.
这是从我的手机发送的,所以当我到达电脑时,我可能会编辑一下.希望它有帮助
新问题:
[connectedPeripheral readValueForCharacteristic:wantedCharacteristic]
和周边代表
- (void) peripheral:(CBPeripheral *)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error{ NSLog(@"Characteristic value : %@ with ID %@",characteristic.value,characteristic.UUID); [delegate characteristicValueRead:characteristic.value]; }
为我工作