Android Cómo leer las propiedades de BLE Readable Writable Notifiable GATT Características

Cómo leer las características de BluetoothGattCharacteristic como es característica Readable , Writable o Notifiable .

  /** * @return Returns <b>true</b> if property is writable */ public static boolean isCharacteristicWriteable(BluetoothGattCharacteristic pChar) { return (pChar.getProperties() & (BluetoothGattCharacteristic.PROPERTY_WRITE | BluetoothGattCharacteristic.PROPERTY_WRITE_NO_RESPONSE)) != 0; } /** * @return Returns <b>true</b> if property is Readable */ public static boolean isCharacterisitcReadable(BluetoothGattCharacteristic pChar) { return ((pChar.getProperties() & BluetoothGattCharacteristic.PROPERTY_READ) != 0); } /** * @return Returns <b>true</b> if property is supports notification */ public boolean isCharacterisiticNotifiable(BluetoothGattCharacteristic pChar) { return (pChar.getProperties() & BluetoothGattCharacteristic.PROPERTY_NOTIFY) != 0; } 

Corrí en el problema similar donde el código de la muestra SOLAMENTE trabaja cuando la característica es LEÍDO debido al operador "|". Si la característica es de otros tipos como Notificación o Escribir, el código siempre lo configurará como READ. El código correcto debe ser como el siguiente:

 if((charaProp & BluetoothGattCharacteristic.PROPERTY_READ) > 0){ } else if(charaProp | BluetoothGattCharacteristic.PROPERTY_NOTIFICATION) > 0){ } 

(… Continuar con otros casos)

Una vez más, el código de ejemplo de google no es correcto.

David

  • Android, ¿Cómo puedo hacer que el dispositivo BLE esté conectado a un dispositivo (vinculado)
  • ¿Tiene la naturaleza nativa de sincronización BLE GATT de implementación de Android?
  • Bluetooth Bluetooth de bajo consumo de energía
  • Cómo solucionar el error BluetoothGatt: android.os.DeadObjectException error en Android?
  • Android BluetoothGatt - estado 133 - registro de devolución de llamada
  • BluetoothDevice.ConnectGatt () con el parámetro de transporte
  • Android BLE API: GATT Notificación no recibida
  • ¿Cómo enviar datos a través de un enlace Bluetooth Low Energy (BLE)?
  • Android - No se pudo conectar al dispositivo bluetooth en Lollipop
  • Cambio de tiempo de gatt de bajo consumo de energía de bluetooth o descarga de flujo de lectura para detectar el evento de desconexión más rápido
  • Samsung ble api no puede recibir notificación de múltiples características del GATT
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.