【问题标题】:CoreBluetooth never calls didDiscoverServices on iPhone5SCoreBluetooth 从不在 iPhone5S 上调用 didDiscoverServices
【发布时间】:2014-06-19 14:10:34
【问题描述】:

大多数时候,我们编写的应用程序与我们的 BLE 外围设备配合得很好。通常对于 iPhone 5S 用户来说,设备会陷入困境,每当我们扫描服务时,didDiscoverServices: 委托方法永远不会被调用。重新启动设备或删除所有设置(常规 -> 重置 -> 重置所有设置)可以暂时解决问题。

一旦设备出现此问题,甚至其他应用程序(例如 LightBlue)都会受到影响;在重新启动之前,任何外围设备都无法发现服务。

就上下文而言,我们的 BLE 外设目前不支持配对。

是什么导致了这个问题?有什么方法可以避免造成不稳定?一旦发生这种情况,有没有办法让应用程序自动从中恢复?

一些具有类似症状的问题:App doesn't Discover Services When ReconnectingNot Scanning for Services in iPad Air

更新:仅供参考,我仍在努力解决这个问题,但我们所做的某些事情导致它发生的方式更少(因此它不是真正的优先 ATM)。我还不知道是什么导致了增加的稳定性。

【问题讨论】:

  • 您在 iOS 7.1 上遇到过这种情况吗?
  • 是的,我在 iOS 7.1 上也看到了它,尽管我怀疑(没有经验数据)它发生的频率较低。
  • LightBlue 是停止发现所有服务还是仅停止发现您的服务?
  • 所有服务,AFAICT。就像 BLE 堆栈无法发现任何服务一样。
  • 我也看到了这个导致实际问题的问题。您最近有什么要补充的吗?

标签: ios iphone bluetooth-lowenergy core-bluetooth


【解决方案1】:

这可能是一个 iOS 错误

1) 在您的设备上启用蓝牙日志记录 https://developer.apple.com/bug-reporting/ios/bluetooth/

2) 使用数据包嗅探器观察 iOS 和 BLE 外设之间的连接

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-14
    • 1970-01-01
    • 2014-09-22
    • 1970-01-01
    相关资源
    最近更新 更多