【发布时间】:2013-12-02 15:32:51
【问题描述】:
我正在尝试读取存储在 lightBlue 应用程序中的值,但问题是它似乎无法获取字符串。它检测到我正在读取数据,但是当我将数据转换为字符串时,它会输出 @""
-(void) peripheral:(CBPeripheral *)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error{
if([characteristic.UUID isEqual:[CBUUID UUIDWithString:@"2A29"]]){
if (characteristic.value) {
NSString *stringFromData = [[NSString alloc] initWithData:characteristic.value encoding:NSUTF8StringEncoding];
NSLog(@"The String is %@", stringFromData);
self.manufacturer = [[NSString alloc] initWithData:characteristic.value encoding:NSUTF8StringEncoding];
NSLog(@"Manufacturer Name = %@", self.manufacturer);
}
}
}
【问题讨论】:
-
我做了更多的测试,发送的 NSData 是 HEX 格式,如何将十六进制转换为字符串?我刚刚 NSlogged 数据,它输出了十六进制值
标签: ios nsdata core-bluetooth cbperipheral cbcentralmanager