Aktivieren der Bluetooth-Merkmal Benachrichtigung in Android (Bluetooth Low Energy ) Funktioniert Nicht
Wenn wir setCharacteristicNotification auf ein Zeichen nicht zu geben, Remote-Benachrichtigung auf Wert Ändern? So aktivieren Sie den remote-Benachrichtigung auf einem zentralen Gerät im Bluetooth LE ?
InformationsquelleAutor sreekumar | 2015-08-24
Du musst angemeldet sein, um einen Kommentar abzugeben.
Aktivieren Sie Remote-Benachrichtigung auf Android,
setCharacteristicNotification(Merkmal aktivieren) ist nicht genug.
Schreiben müssen, den Deskriptor für das Merkmal. Periphere aktivieren muss charakteristisch Benachrichtigung während der Erstellung der Kennlinie.
Einmal die Benachrichtigen aktiviert ist , wird ein Deskriptor mit Griff 0x2902 . so müssen wir schreiben BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE auf den Deskriptor. Zuerst Konvertieren 0x2902 zu 128-bit-UUID, es wird so sein 00002902-0000-1000-8000-00805f9b34fb (Basis Bluetooth UUID ist 0000xxxx-0000-1000-8000-00805f9b34fb).
Ihre Antwort ist teilweise falsch: 0x2902 nicht verfügbar es ist immer da, unabhängig von oder nicht aktiviert. Sein Wert signalisiert, ob Anzeige, Meldung oder keine aktiviert sind. 0x2902 ist obligatorisch und sollte immer vorhanden. Aber einige Merkmale werden könnten, off-spec-und überspringen, vor allem, wenn Sie dont-Anzeige / Anzeige-Eigenschaften
Korrektur von mir selbst: ein Merkmal ist vorhanden, wenn Sie mitteilen / zeigen-Eigenschaft festgelegt ist, sonst nicht.
InformationsquelleAutor sreekumar
erhalte ich auch den Wert null an, wenn der Anruf descrpitor.setValue, so dass ich nur einschalten, wenn die Entdeckung service und endlich funktioniert es sehr gut:
Benachrichtigen master-Gerät, das eine Eigenschaft ist zu ändern, rufen Sie diese Funktion auf Ihre pheripheral:
in Ihrem master-Gerät: aktivieren Sie setCharacteristicNotification nach entdecken Sie den service:
nun können Sie Ihre charakteristische Wert ändern, zum Beispiel onCharacteristicRead Funktion :
InformationsquelleAutor Doni
Zur Benachrichtigung aktivieren Sie tun sollten, als folgende.
die definition ist wie folgt.
Immer noch, wenn remote-Benachrichtigung nicht funktioniert, versuchen zu Lesen, nur Merkmale aus, nach dem aktivieren der Benachrichtigungen für die gleichen.
Lesen von Eigenschaften ist als
wenn 'aktiviert' ist wahr, Sie können Benachrichtigung aktivieren, sonst kann es zu deaktivieren.
Ich vermute, dass die Boolesche
enabled
ist auf das Ergebnis dermBluetoothLeService.setCharacteristicNotification(mSampleCharacteristic, true);
?InformationsquelleAutor Jose Jithin Stanly