Bluetooth BLE - onCharacteristicChanged () ikke påberopes på Samsung S10e

stemmer
0

Min android søknad samvirking med en Bluetooth-innretning som måler visse fysiske egenskaper hos en væske (eksempel - tetthet, spesifikk vekt osv) Jeg har brukt setCharacteristicNotification () for å aktivere varsling for en bluetooth karakteristikk. Mens debugging jeg får varsling aktivert (prøvd med indikasjon aktivert også), men den tilbakeringing metoden onCharacteristicChanged () er ikke å bli påkalt spesielt på Samsung S10e . Jeg prøvde det med andre high-end-enheter av samme spesifikasjoner og Android OS-versjoner og alt fungerer som forventet . Kan noen gi meg innsikt på dette så hvorfor skjer dette? Nedenfor er min kode for å sette varsling og skrive Gatt beskrivelse.

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();
    }
Publisert på 14/01/2020 klokken 00:02
kilden bruker
På andre språk...                            

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