在'CBPeripheral *'类型的对象上找不到属性'uuid'

时间:2016-03-16 13:08:54

标签: ios core-bluetooth uuid nsuuid

我使用以下代码:

CFStringRef cfstr = CFUUIDCreateString(NULL, self.peripheral.uuid);

这会返回错误

  

在“CBPeripheral *”类型的对象上找不到“属性'uuid'”

我认为这是因为uuid已被弃用,但我不确定如何纠正它。

我尝试将self.peripheral.uuid更改为self.peripheral.identifier,但这会给我

  

'不兼容的指针类型传递类型的可保留参数   'NSUUID *'到CF函数期待'CFUUIDRef'(又名'const struct   __CFUUID *')输入

请尽可能帮助。

1 个答案:

答案 0 :(得分:1)

如果您尝试将peripheral的UUID作为CFStringRef,那么您需要做的就是:

CFStringRef cfstr = (__bridge CFStringRef)peripheral.identifier.UUIDString;

identifier上的CBPeripheral属性是NSUUID类对象,该对象具有返回UUID的NSString表示的方法。

有关详细信息,请参阅课程参考:https://developer.apple.com/library/mac/documentation/Foundation/Reference/NSUUID_Class/