我的应用程序使用BLE (蓝牙4)连接到物理外设。我和我的用户多次遇到一个错误,在某个时候,应用程序停止连接到外围设备--您可以看到发现BLE外围设备并建立连接的指示,但是几秒钟后,连接就被删除了。
只有在重新启动iDevice之后,事情才会恢复正常。
我在检查这个问题上做了很长时间的工作,并对这个问题进行了彻底的研究,直到我得出结论,这一定是iOS中的一个bug (用7.1进行测试,但可能也发生在8.0上)。
我的测试和发现:
有人能解释一下这个问题吗?
您可以想象这种问题对我的用户体验产生的负面影响,因为BLE连接对于产品是必不可少的。
我将感谢你关于如何解决这个问题的建议和建议。
谢谢!
更新:
苹果回应了我的技术支持请求:
底线:
到目前为止,iOS 8还没有出现这种情况,但另一方面,我可以看到关于其他蓝牙问题的帖子,这是不一定相关,但谁知道呢。
全文答覆:
我响应您的发现,您和您的客户发现,经过一些使用点,iOS BLE无法维护一个连接。您指出问题是用iOS 7.1识别出来的。有关iOS BLE的问题已经被报道,并且已经用iOS 8.0进行了修正。要想最好地确定您的问题是否已经解决,最简单的方法当然是安装iOS 8并查看是否可以复制该问题。但是,当您报告可以使用iOS 7.1在deivce上复制问题时,第一件事是获取蓝牙服务器配置文件,将其安装到deivce,复制问题,然后在问题发生时获得BLE日志。配置文件将有BLE服务器报告其他日志记录详细信息,这可以帮助报告服务器遇到的问题。我们可以看到,这个问题是否以前已经报道过。需要考虑的是,对于所有新的bug报告问题,核心蓝牙工程要求所有问题都与当前发布的iOS版本(即8.0 )进行回归。对于使用iOS 7.x的客户,将不再进行iOS 7更新--所有软件修复和错误修复都将使用iOS 8。因此,只有iOS 8报告的问题才会被调查。您可以从Apple报告网页https://developer.apple.com/bug-reporting/ios/bluetooth/获得BLE服务器配置文件。有关安装概要文件和捕获日志的说明在网页上显示。如果使用iOS 7.x捕获日志,则可以将其发送给我以供审查。然而,这在一定程度上是一项学术练习--要知道iOS是否解决了这个问题,或者它是否持续存在,我们需要看看这个问题是否发生在iOS 8下。需要记住的是,一旦你将设备更新到iOS 8,就无法将其恢复到以前的版本。我很高兴看到你的结果。但是,如果问题在iOS 8下仍然存在,最好提交一份bug报告,以引起核心蓝牙工程对此问题的关注。您可以使用报告网页提交bug报告。- http://bugreport.apple.com
发布于 2015-02-02 17:07:50
因此,这个问题似乎通过最近的iOS更新( 8.0或8.1)得到了解决。
https://stackoverflow.com/questions/25959263
复制相似问题