1

Ich habe eine iOS-App, die als Peripheriegerät mit einem CBPeripheralManager und einem Dienst mit mehreren Merkmalen eingerichtet ist. Ich versuche, die Verbindung wiederherzustellen, nachdem der Benutzer das Control Center geöffnet und Bluetooth ein- und ausgeschaltet hat. Es sieht so aus, als ob mein Dienst die Werbung korrekt wieder aufnimmt, aber ich bekomme nie Callbacks für Schreibanforderungen. Ich erwarte, dass ‑peripheralManager:didReceiveWriteRequests: angerufen wird, aber es passiert nie, sobald Bluetooth wieder eingeschaltet wird.iOS-Peripheriegerät, das keine Schreibanforderungen nach der Stromumschaltung empfängt

Gibt es etwas Besonderes, was wir in diesem Fall tun müssen? Laut der CBPeripheralManager Dokumentation müssen wir Werbung nur dann explizit neu starten, wenn der Peripheriezustand unter PoweredOff geht. Ich sehe es gehen zu PoweredOff, dann PoweredOn, und wenn ich es abfrage, ‑isAdvertising gibt YES zurück, und das Hinzufügen des Dienstes stürzt mit einer Ausnahme ab, weil der Dienst bereits hinzugefügt wurde.

Antwort

0

Damit die Schreibanforderung empfangen werden kann, müssen Sie zunächst eine Verbindung zu einem Peripheriegerät herstellen und dann darauf schreiben.

Könnte es sein, dass nach dem Zurücksetzen des Bluetooth die Verbindung nicht wiederhergestellt wird?

Verwandte Themen