4

我的 iPad mini(iOS7.1.2) 有我的应用程序使用 CoreBluetooth 作为外围设备。它的 state( CBPeripheralManager::state) 是PoweredOn,并且在添加和开始宣传我的服务时没有任何其他错误。但是,外围设备周围的任何中央设备都无法连接到它。

当然,我认为中央设备可能存在问题。这不是真的,因为这些中央设备可以与除“那个外围设备”之外的其他外围设备连接。当我试图与外围设备连接时,- (void)centralManager:(CBCentralManager *)central didDisconnectPeripheral:(CBPeripheral *)peripheral error:(NSError *)error被调用。(错误代码为 7)。

外围设备没有显示任何错误,并且中央设备在重新启动外围设备之前无法连接。我应该多做些什么?我应该将设备升级到 iOS8 吗?

ps 中心设备多种多样,从iPhon4s到iPhone6+,从iOS7.0.6到iOS8.2。中央设备和外围设备都没有问题。

ps 只发生过一次,但是在奇怪的状态下,外围状态突然变成了ResettingPoweredOn又一次。之后,连接就没有问题了。不知道为什么状态突然变成了 Resetting,状态是怎么变的。

+添加 @ 04081228 (GMT+0000)

我从试图与外围设备连接的中央设备中发现了一些可疑的日志。以下是一些日志。

4 月 8 日 21:20:57 BTServer[61]:ATT 无法在设备“9C3C82F8-50F5-FE2C-EE41-D8B8B85D7DA3”上找到 GATT 主>服务

Apr 8 21:20:57 BTServer[61] : ATT Aborting command as device >"9C3C82F8-50F5-FE2C-EE41-D8B8B85D7DA3" 不再连接

4 月 8 日 21:21:08 BTServer[61]:ATT 无法在设备“9C3C82F8-50F5-FE2C-EE41-D8B8B85D7DA3”上找到 GATT 主>服务

Apr 8 21:21:08 BTServer[61] : ATT Aborting command as device >"9C3C82F8-50F5-FE2C-EE41-D8B8B85D7DA3" 不再连接

我发现来自 github 的评论说这是 iOS 的已知问题。不过,我找不到有关此的任何其他信息。

+添加@ 04081304 (GMT+0000)

我也找到了这个日志。我也不确定这意味着什么。

4 月 8 日 22:02:03 BTServer[61]:ATT 无法将 MTU 设置为 158,结果 BM3 STATUS 14

4 月 8 日 22:02:13 BTServer[61]:ATT 无法将 MTU 设置为 158,结果 BM3 STATUS 14

4

0 回答 0