tutorial things studio scan low example ble android service bluetooth bluetooth-lowenergy

things - bluetooth low energy android studio tutorial



mBluetoothGatt.getService(uuid) devuelve null (3)

Intente hacer un descubrimiento completo [1] de la base de datos remota y luego itere a través de los servicios. Tal vez tengas mal el UUID.

[1] http://developer.android.com/reference/android/bluetooth/BluetoothGatt.html#discoverServices ()

En mi aplicación, estoy transfiriendo el número UUID del servicio de audífonos como en la muestra BLE de google, es decir, 0000a00-0000-1000-8000-00805f9b34fb

Pero el servicio getservice devuelve null significa que el servicio no es compatible con BluetoothGatt. ¿Por qué está pasando esto? ¿Alguien puede ayudarme?


Primero debe descubrir todos los servicios para el dispositivo determinado por documentación.

Esta función requiere que el descubrimiento del servicio se haya completado para el dispositivo dado. http://developer.android.com/reference/android/bluetooth/BluetoothGatt.html#getService(java.util USID)

@Override // New services discovered public void onServicesDiscovered(BluetoothGatt gatt, int status) { if (status == BluetoothGatt.GATT_SUCCESS) { BluetoothGattService mBluetoothGattService = mBluetoothGatt.getService(UUID.fromString(serviceUUID)); if (mBluetoothGattService != null) { Log.i(TAG, "Service characteristic UUID found: " + mBluetoothGattService.getUuid().toString()); } else { Log.i(TAG, "Service characteristic not found for UUID: " + serviceUUID); } }

O simplemente puede ejecutar una búsqueda

for (BluetoothGattService gattService : gattServices) { Log.i(TAG, "Service UUID Found: " + gattService.getUuid().toString()); }


Tu UUID también está equivocado. Debe ser 0000a00X-0000-1000-8000-00805f9b34fb, no 0000a00-0000-1000-8000-00805f9b34fb