Android BLE GATT_ERROR(133) zum Anschluss an Gerät
Ich versuche, eine Verbindung zu einem BLE-Gerät mit der MAC-Adresse.
BluetoothDevice device = bluetoothAdapter.getRemoteDevice(rememberedDeviceAddress)
bluetoothDevice.connectGatt(context, false, bluetoothGattCallback);
Bekomme ich einen Rückruf in BluetoothGattCallback.onConnectionStateChange
mit status = 133
und newState = 2
, auch wenn meine BLE-Gerät ist ausgeschaltet.
newState = 2 bezieht sich auf BluetoothProfile.STATE_CONNECTED
was bedeutet, dass ich mit dem Gerät verbunden und status = 133 GATT_ERROR (statt status = 0-ERFOLG)
Ich nicht bekommen, die Fehler beim registrieren von callback - Fehler.
Gerät : One plus One (Android 4.4)
Irgendwelche Hinweise, was könnte dieses Problem verursacht werden, wäre hilfreich.
Hinweis: die Ausgabe geschieht nicht auf alle Geräte. Alles scheint zu funktionieren gut auf dem Nexus 5 mit Android 5.0
Unten finden Sie die stack-trace:
03-06 13:00:11.994: D/BluetoothGatt(26771): registerApp()
03-06 13:00:11.994: D/BluetoothGatt(26771): registerApp() - UUID='uuid comes here'
03-06 13:00:12.004: D/BluetoothGatt(26771): onClientRegistered() - status=0 clientIf=5
03-06 13:00:42.004: D/BluetoothGatt(26771): onClientConnectionState() - status=133 clientIf=5 device='device id comes here'
Könnten Sie das herausfinden? Ich habe das gleiche problem.
InformationsquelleAutor dnivra | 2015-03-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
Bestimmte Geräte erfordern eine Bluetooth-LE-Interaktionen werden auf dem Benutzeroberflächenthread ausgeführt. Also ich würde empfehlen zu versuchen so etwas wie dieses:
Natürlich könnten Sie die Aktivität.runOnUiThread als gut. Quelle: https://stackoverflow.com/a/23478737
InformationsquelleAutor Emeritus