diff options
Diffstat (limited to 'src/android')
-rw-r--r-- | src/android/bluetooth/src/org/qtproject/qt5/android/bluetooth/QtBluetoothLE.java | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/android/bluetooth/src/org/qtproject/qt5/android/bluetooth/QtBluetoothLE.java b/src/android/bluetooth/src/org/qtproject/qt5/android/bluetooth/QtBluetoothLE.java index 50e2f293..93b4a50d 100644 --- a/src/android/bluetooth/src/org/qtproject/qt5/android/bluetooth/QtBluetoothLE.java +++ b/src/android/bluetooth/src/org/qtproject/qt5/android/bluetooth/QtBluetoothLE.java @@ -168,6 +168,14 @@ public class QtBluetoothLE { GattEntry entry = entries.get(runningHandle); entry.valueKnown = true; entries.set(runningHandle, entry); + String data = new String(characteristic.getValue()); + // Qt manages handles starting at 1, in Java we use a system starting with 0 + characteristic.getService().getUuid().toString(); + + //TODO avoid sending service uuid -> service handle should be sufficient + leCharacteristicRead(qtObject, characteristic.getService().getUuid().toString(), + runningHandle+1, characteristic.getUuid().toString(), + characteristic.getProperties(), characteristic.getValue()); performServiceDiscoveryForHandle(runningHandle+1, false); } @@ -431,5 +439,8 @@ public class QtBluetoothLE { public native void leConnectionStateChange(long qtObject, int wasErrorTransition, int newState); public native void leServicesDiscovered(long qtObject, int errorCode, String uuidList); public native void leServiceDetailDiscoveryFinished(long qtObject, final String serviceUuid); + public native void leCharacteristicRead(long qtObject, String serviceUuid, + int charHandle, String charUuid, + int properties, byte[] data); } |