ios - 实现 CoreBluetooth connectPeripheral 超时的正确方法?

标签 ios ios8 core-bluetooth

鉴于蓝牙在一端断开时似乎很适合连接超时,我认为 CBCentralManager connectPeripheral:options: 方法会在特定时间后无法连接时自动超时(因为在我扫描它和用户选择它进行连接之间的过渡期间,我可能关闭/重置了目标外围设备)。

我查看了 options 参数以寻找可能的超时参数,但运气不佳。

启动 NSTimer 的正确技术是最终触发 cancelPeripheralConnection: 如果计时器到期,并且 invalidate 中的计时器>centralManager:didConnectPeripheral: 和 friend ?

最佳答案

请查看有关 CBCentralManager 及其方法 connectPeripheral:options: 的 Apple 文档。第一件事 - 尝试连接到外围设备不会超时,第二件事 - 您可以设置委托(delegate)以接收连接/断开连接通知。

https://developer.apple.com/library/mac/documentation/CoreBluetooth/Reference/CBCentralManager_Class/index.html#//apple_ref/occ/instm/CBCentralManager/connectPeripheral:options :

关于ios - 实现 CoreBluetooth connectPeripheral 超时的正确方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32482136/

相关文章:

ios7 - 想要在连接的蓝牙设备离开范围时收听通知

ios - while delegate 要么是 nil 要么不实现外设 :didUpdateValueForCharacteristic:error:?

ios - 选择一个词并在 iOS 中显示工具提示

ios - 尝试发布图片时获取 "FBSDKErrorDeveloperMessageKey=(#324) Requires upload file"

ios - VFR-Reader 在 iOS8 中崩溃

ios - 使用 EXC_RESOURCE 关闭应用程序,iOS 8 GM 上的 WAKEUPS 异常

ios - 位置管理器 :didEnterRegion and didExitRegion are never getting called :iBeacon

iphone - Action 方法和协议(protocol)方法有什么区别?

ios - Sprite Kit - 使用 textureFromNode 时 Retina 上的低分辨率纹理

css - 在 Safari 中,Div 在 iPad 上崩溃