在i-phone5上的ios 6.0.1中,CBperipheral uuid为null

Man*_*nix 9 objective-c core-bluetooth bluetooth-lowenergy ios6 iphone-5

好吧,我有一个应用程序扫描并连接到ios 6.0.1下的'bluetooth le'设备但在iphone 4s上,它运行良好.当把应用程序上传到苹果商店时,他们给我发了一个应用程序崩溃,蝙蝠编程,但我只是在我在iphone5上尝试应用程序时才知道崩溃了

 - (void)centralManager:(CBCentralManager *)central didDiscoverPeripheral:(CBPeripheral *)peripheral advertisementData:(NSDictionary *)advertisementData RSSI:(NSNumber *)RSSI; 
Run Code Online (Sandbox Code Playgroud)

给我一个带有null uuid的外围设备.

我打印外围设备,名称,uuid,rssi和advertData,一切都很好但是uuid是null,我在应用程序中使用uuid.这使我的应用程序崩溃,我可以控制null uuid,这意味着我无法控制应用程序.

有人知道会发生什么,以及可能的解决方案吗?

Man*_*nix 2

接下来我们要做的是:你不能用 NSLog 写入外围对象,但在执行 connect 之前我们不能拥有外围设备的 uuid 属性。它始终为空。我们在服务读取完成时(而不是之前)请求 uuid,然后我们就无法在 i-phone5 上运行应用程序而不会崩溃。

我在 TI(德州仪器)上读到这是一个 ios 错误,但我认为这是一个 ble 安全更新,我们需要在询问 uuid 之前进行连接。