【发布时间】:2017-11-15 12:32:48
【问题描述】:
问题:
最近,我经常在 CBPeripheralManager 中获得 CBManagerStateResetting 状态。获得 CBManagerStateResetting 状态后,CBManagerStatePoweredOn 在 3~5 秒内到来。但是,这不仅会影响应用程序,还会影响对等设备由于链路丢失错误而处于断开状态。
场景:
此问题特别发生在 BLE 中的连续数据交易期间,同时并行使用来自 iPhone 的 3G 数据。
当 CBManagerStateResetting 发生时,对等设备断开连接。现在经常发生这种情况,这很烦人。
我的问题,
- 为什么在应用程序已经连接到 BLE 设备时出现 CBManagerStateResetting 状态?
- 可以从 iOS 应用程序端和对等设备端采取哪些步骤来防止此重置问题?
额外信息: CBPeripheralManagerStates如下:
typedef NS_ENUM(NSInteger, CBPeripheralManagerState) {
CBPeripheralManagerStateUnknown = CBManagerStateUnknown,
**CBPeripheralManagerStateResetting = CBManagerStateResetting,**
CBPeripheralManagerStateUnsupported = CBManagerStateUnsupported,
CBPeripheralManagerStateUnauthorized = CBManagerStateUnauthorized,
CBPeripheralManagerStatePoweredOff = CBManagerStatePoweredOff,
CBPeripheralManagerStatePoweredOn = CBManagerStatePoweredOn,
};
【问题讨论】:
标签: ios iphone bluetooth bluetooth-lowenergy core-bluetooth