¿Se asume éxito con la función onCharacteristicWrite del BluetoothGattCallback de Android si no se produce ningún error?
Trabajando en una aplicación de Android para enviar datos a un dispositivo periférico a través de BLE. ¿Tengo una pregunta acerca de la función onCharacteristicWrite de Android BluetoothGATTCallback: Cómo sabe si la transacción de escritura fue exitosa? ¿Se asume que es exitosa siempre y cuando no ocurra ningún error? ¿O registra una respuesta de éxito enviada desde la característica del dispositivo periférico a la que se escribe la información?
davy.ai
La función
onCharacteristicWrite()
enBluetoothGattCallback
de Android se ejecuta cuando se completa o falla la operación de escritura. Si la operación de escritura es exitosa, el objetoBluetoothGattCharacteristic
será actualizado con el nuevo valor escrito.Si ocurre un error durante la operación de escritura, se lanzará una
BluetoothGattException
, y la funciónonCharacteristicWrite()
será llamada con el código de error. Se asume que hay éxito siempre y cuando no se lance ninguna excepción.Sin embargo, es importante destacar que algunos dispositivos periféricos pueden enviar una respuesta indicando éxito o fallo después de la operación de escritura. Si el dispositivo periférico envía una respuesta, la función
onCharacteristicChanged()
será llamada enBluetoothGattCallback
, y la respuesta podrá ser accedida desde el argumento de retorno de llamada.En resumen, se asume que hay éxito en una transacción de escritura en
BluetoothGattCallback
cuando no ocurre ningún error, pero un dispositivo periférico puede enviar una respuesta indicando éxito o fallo para una verificación adicional.