2013-12-18 40 views
0

我知道这个问题已被多次询问,但我的情况与其他人略有不同。我成功地能够连接和接收来自我的应用程序(iPhone 5,iPhone 4S,iPad 3)中具有不同ios版本的心率设备的值。但在客户端,它根本不工作,不知道为什么。CBCentralManager iOS问题?

另外我今天再次调试代码,它的工作正常与iPhone 5,5C和iPAd 3,但在iPhone 4S与iOS 6.1.3,我得到CBCentralManager.state = 2(未通电)可能是这样的客户端的问题也结束了吗?

有人可以解释我发生了什么?如果相同的代码在iPhone5,5c上运行良好,iPAd 3那么为什么不在客户端以及现在的我的4S?有人能指出我发生了什么,因为现在我完全沮丧于此。任何指导将非常可观。谢谢

+0

他们的蓝牙开启了吗?你什么时候检查CBCentralManager状态? – Larme

+0

是的,蓝牙开启,他们在同一时间尝试与另一个应用程序同时,在该应用程序,它的工作正常。状态2的原因是什么?每一篇文章都会说,我们应该等到 - (BOOL)是可用的硬件先得到状态,然后如果它的话我们应该使用uuid和进一步的操作。我以同样的方式完成了这项工作。但仍然是我的iPhone 4S版本6.1.3返回状态2。即使我今天运行了苹果示例代码(HRM),它也在4S中重新调整状态2。 – york

回答

-2

iPhone 4S不支持BLE。中央/外围管理器状态== 2实际上表示“不支持”。 '未开机'状态为4. 看看苹果核心蓝牙参考: https://developer.apple.com/Library/ios/documentation/CoreBluetooth/Reference/CBCentralManager_Class/translated_content/CBCentralManager.html#//apple_ref/c/econst/CBCentralManagerStateUnknown

+0

iPhone 4S支持BLE,我用iOS7测试过,它的工作正常。谢谢,我会更多地了解它。 – york

+0

iPhone 4S支持BLE,即我用来开发BLE应用程序的设备。 – Larme