首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >centralManagerDidUpdateState总是返回PoweredOff

centralManagerDidUpdateState总是返回PoweredOff
EN

Stack Overflow用户
提问于 2017-10-03 09:05:04
回答 1查看 512关注 0票数 0

在我的应用程序中,我检查蓝牙是否打开,如果关闭,我会向用户显示警报,以便启用它。对于此功能,我使用centralManagerDidUpdateState并检查中心状态。在iOs 10上,设备工作正常,但在iOs 11上不工作,执行此操作后始终返回CBCentralManagerStatePoweredOff:

1.-我去做配置,然后关掉蓝牙。

2.-我打开应用程序,调用centralManagerDidUpdateState回调,并检测到PoweredOff。

3.-我去做配置,打开蓝牙。

4.-我回到应用程序,centralManagerDidUpdateState被调用,而PoweredOff仍然是蓝牙打开时的状态。

这个问题是iOs 11的错误吗?有人知道有什么解决方案可以检查蓝牙是否打开吗?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-22 10:35:28

我也面临着同样的问题。我使用这个示例项目"https://github.com/jasonmgeorge/BLEScanner“测试BLE功能--一个设备在iOS 10.3.3上,另一个在iOS 11.2上。在iOS 10.3.3上,它工作正常,但在另一个设备上,我总是收到相同的错误。然后我意识到

NSBluetoothPeripheralUsageDescription

不是在Info.plist,所以我补充说。我又得到了"CBCentralManagerStatePoweredOff“。我去设置断电蓝牙和再次打开。它神奇地起作用了。这很可能是iOS 11的一个bug。请检查你的执行情况。这并不是很一致,但有时是有效的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46540944

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档