Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/105.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS 8不推荐的RSSI方法_Ios_Objective C_Ios8_Core Bluetooth - Fatal编程技术网

iOS 8不推荐的RSSI方法

iOS 8不推荐的RSSI方法,ios,objective-c,ios8,core-bluetooth,Ios,Objective C,Ios8,Core Bluetooth,因此,通过阅读cbperipheraldegate文档,可以看出RSSI和peripheralDidUpdateRSSI:error:已被iOS 8弃用 Xcode警告: iOS 8.0中不推荐使用“rssi” 我注意到我的信号强度指示器不再被更新,所以我做了一些研究,发现了一种新方法([cbperipheraldegate peripheral:didrearssi:error:),该方法在调用readRSSI方法后被异步回调。不幸的是,这个方法似乎也没有被调用,即使我确实将父类设置为CBPe

因此,通过阅读
cbperipheraldegate
文档,可以看出
RSSI
peripheralDidUpdateRSSI:error:
已被iOS 8弃用

Xcode警告:

iOS 8.0中不推荐使用“rssi”

我注意到我的信号强度指示器不再被更新,所以我做了一些研究,发现了一种新方法(
[cbperipheraldegate peripheral:didrearssi:error:
),该方法在调用
readRSSI
方法后被异步回调。不幸的是,这个方法似乎也没有被调用,即使我确实将父类设置为CBPeripheral委托


还有其他人对iOS 8 Core蓝牙更新有问题吗?

它在iOS 8.0.2中再次工作


使用
[myPeripheral readRSSI]

它适用于iOS 8.0.2,但现在已被限制。我每200ms发送一个readRSSI,每秒只收到一次响应。它在iOS 7.1上运行得很好。

在苹果开发者论坛上发布了一个已知的问题,我也有一个开放的雷达

问题似乎在于,新的回调方法
外围设备:didrearssi:error:
从未在iOS 8上调用过,特别是在与外围设备建立初始连接之后。我找到的唯一解决方案是通过打开/关闭或重新启动手机来重置手机上的蓝牙

更新:
刚刚测试了我的示例,该示例在当前的8.2版本中显示了此问题,我再也看不到新的iOS 8委托方法从未被调用的任何问题。我正在根据8.2版本将我的雷达标记为已解决。

在iOS 8.1.1中,
外围设备:didrearssi:error:
只会为您连接的外围设备调用。如果您只是通过扫描发现了外围设备,然后对其调用了
readRSSI
,则不会调用回调


尝试先连接到外围设备(通过
CBCentralManager
connectPeripheral:options:
),然后调用
readRSSI

这并不能回答问题。若要评论或要求作者澄清,请在他们的帖子下方留下评论-你可以随时对自己的帖子发表评论,一旦你有足够的评论,你就可以发表评论。事实上,这确实提供了问题的答案。他的问题涉及
外围设备:didrearssi:error:
没有接到电话,他问是否有其他人对此有问题。我确实遇到了问题,我找到了在iOS 8中使用代理方法调用CoreBluetooth的解决方案:连接到外围设备。这只会在您第一次连接到外围设备并调用[peripheral readRSSI]时成功返回。任何后续连接都将无法调用didReadRSSI委托方法。@Shree:这实际上是定期刷新已观察但未连接到外围设备的RSSI的唯一方法。虽然它本身并没有回答这个问题,但它提供了一个解决方案。在iOS 8.1.3上看到了完全相同的问题。我一直在测试每个测试版,下一个即将发布的版本似乎已经解决了这个问题。