问题可能是重复的,但我尝试了很多代码而且没有用。我读过了
CBCentralManagerOptionShowPowerAlertKey
选项和显示警报的可能性将设置蓝牙选项转到iPhone以打开应用程序,但我还没有得到这个。
如果我将密钥设置为true,则密钥不会出现,当我将值更改为false时,密钥不起作用...
我在Swift应用程序中使用此代码:
var bCentralManger: CBCentralManager!
self.bCentralManger = CBCentralManager(delegate: self, queue: DispatchQueue.main, options: [CBCentralManagerOptionShowPowerAlertKey: true])
在iOS中使用此选项?我在我的设备上使用iOS 12。这个代码有用吗?谢谢!
只有在设置应用程序中关闭蓝牙时才会显示蓝牙电源警报。如果您只是从控制中心禁用蓝牙,则不会显示该对话框。从控制中心禁用蓝牙会断开所有连接的外围设备,但不会完全关闭蓝牙硬件。
您可以在.poweredOff
委托方法中显示自己的警报以响应centralManagerDidUpdateState
状态。遗憾的是,在这种情况下,您无法将用户直接发送到蓝牙设置。
您可以在Apple上记录关于此行为的Radar,但我怀疑他们会响应系统按预期工作。