我有一個CoreBluetooth
應用程序。這將在前臺開始連接並開始發送/接收數據,並在發送到後臺時繼續執行此操作,因爲我在app-Info.plist
中添加了bluetooth-central
到UIBackgroundModes
。當飛行模式切換時,CoreBluetooth不會調用didDisconnectPeripheral
如果我切換飛行模式設置我的應用程序斷開,但它不會得到didDisconnectPeripheral
回調。爲什麼是這樣?
我的解決方法是清除對centralManagerDidUpdateState
中的我的CBPeriperal
對象的所有引用,以便能夠在應用程序再次進入前臺時執行新的掃描和連接。
如果你關掉只有藍牙設置(而不是通過飛行模式) ,你的didDisconnectPeripheral被調用了嗎? – Larme
@Larme,同樣的事情發生。 – chwi