it-swarm.com.de

getbluetoothservice () rief ohne Bluetooth-Manager-Rückruf an

In meiner Android-Anwendung erhalte ich häufig getBluetoothService() called with no BluetoothManagerCallback als Fehler.

Ich habe keine Ahnung, was dies oder irgendetwas an Bluetooth Manager-Rückrufen verursacht. Kann mir jemand eine gute Vorstellung davon geben, was dieses Problem verursachen könnte oder wo ich anfangen soll.

34
dacopenhagen

Beim Einlesen in den Android-Quellcode scheint es eine Warnung zu sein, gegen die Sie nichts unternehmen können. Der Quellcode zeigt das, wenn Sie anrufen

BluetoothSocket#connect();

Dann wird es anrufen

BluetoothAdapter.getDefaultAdapter().getBluetoothService(null);

Der Schlüssel hier ist der Nullparameter, den er in der obigen Zeile übergibt. Aus diesem Grund gibt es keinen Rückruf, und die BluetoothSocket-Klasse gibt eine Warnung aus.

Da es sich nur um eine Warnung handelt, denke ich nicht, dass Sie etwas dagegen unternehmen müssen.

https://Android.googlesource.com/platform/frameworks/base/+/master/core/Java/Android/bluetooth/BluetoothSocket.Java Zeile 306 https: //Android.googlesource. com/Plattform/Frameworks/Basis/+/Master/Kern/Java/Android/Bluetooth/BluetoothAdapter.Java Zeile 1610

34
AndreasPK

Es scheint, dass dies aufgerufen wird, wenn mehrere Bluetooth-Sockets gleichzeitig geöffnet werden. Ich habe dieses Problem behoben, indem sichergestellt wurde, dass nur jeweils 1 Steckdose geöffnet wurde.

6
dacopenhagen

Ich erhalte diese Fehlermeldung auch, nachdem meine Anwendung geschlossen wurde und ich sie auf keine Weise loswerden kann. Nach diesem Start muss ich mein Handy neu starten, da ich Bluetooth nicht mehr einschalten kann.

Im Moment (mit dem gleichen Code) passiert es nur auf einem meiner Handys.

2

Ich habe diese Nachricht erhalten, nachdem ich BluetoothSocket.connect () direkt nach dem Empfang des BluetoothHeadset.ACTION_CONNECTION_STATE_CHANGED mit einem BluetoothHeadset.STATE_CONNECTED-Status versucht habe. Das BluetoothSocket.connect () ist ebenfalls fehlgeschlagen. Nachdem Sie vor dem Versuch von BluetoothSocket.connect () ein Timeout von 500 ms hinzugefügt hatten, wurde mein Problem mit der Verbindung behoben. Die Meldung "getBluetoothService (), die ohne BluetoothManagerCallback aufgerufen wurde" bleibt erhalten, aber alles funktioniert.

0
Pepijn