Bluetooth BLE - onCharacteristicChanged () nicht auf Samsung S10e aufgerufen

stimmen
0

Meine Android Anwendung ist mit einem Bluetooth - Schnittstellenvorrichtung , dass Maßnahmen bestimmten physikalischen Eigenschaften einer Flüssigkeit (beispielsweise - Dichte, spezifisches Gewicht etc.) ich verwendet habe setCharacteristicNotification () Benachrichtigung für ein Bluetooth - Kennlinie zu ermöglichen. Während des Debuggen ich erhalte Benachrichtigung (versucht , mit der Angabe zu enabled) aktiviert , aber die Callback - Methode onCharacteristicChanged () ist nicht besonders auf aufgerufen zu werden Samsung S10e . Ich versuchte es mit anderen High-End - Geräten von gleichen Spezifikationen und Android OS - Versionen und alles funktioniert wie erwartet . Kann mir jemand auf diese geben einen Einblick, warum ist das passiert? Unten ist mein Code Benachrichtigung und Schreiben Gatt - Descriptor für die Einstellung.

BluetoothGattDescriptor descriptor =
characteristic.getDescriptor(GattConstants.UUID_CHARACTERISTIC_CONFIGURATION); //descriptor.setValue(BluetoothGattDescriptor.ENABLE_INDICATION_VALUE);
 descriptor.setValue(enabled ? BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE : BluetoothGattDescriptor.DISABLE_NOTIFICATION_VALUE);
return bluetoothGatt.writeDescriptor(descriptor);

writeCharacteristic ()

osCommandCharacteristic.setValue(Utils.concatenateBytes(control, (byte) value.length, value));
            boolean writeChar = bluetoothGatt.writeCharacteristic(osCommandCharacteristic);
            Log.e(writeValueCharc,command+-->+writeChar);
            return writeChar;

concatenateBytes ()

public static byte[] concatenateBytes(byte byte1, byte byte2, byte[] bytes) {
        ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
        byteArrayOutputStream.write(byte1);
        byteArrayOutputStream.write(byte2);
        try {
            byteArrayOutputStream.write(bytes);
        } catch (IOException e) {
            logger.error(Error writing bytes, e);
        }

        return byteArrayOutputStream.toByteArray();
    }
Veröffentlicht am 14/01/2020 um 00:02
quelle vom benutzer
In anderen Sprachen...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more