From 613f43017736580a1625cda3c5a3ed1ea7c79238 Mon Sep 17 00:00:00 2001 From: Andre Eisenbach Date: Tue, 29 Mar 2016 20:52:38 -0700 Subject: [PATCH] Always use Write Request for GATT descriptor writes According to the Bluetooth Core specification v4.2, Vol 3, Part G, section 4.12.3: "The Attribute Protocol WRITE REQUEST is used used for this sub-procedure". Change-Id: I86e4e1d3a8bfd7d78dfed8419f8abd2d7e89b2bc --- core/java/android/bluetooth/BluetoothGatt.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/core/java/android/bluetooth/BluetoothGatt.java b/core/java/android/bluetooth/BluetoothGatt.java index f6d2268343a31..b8a40dc6895a7 100644 --- a/core/java/android/bluetooth/BluetoothGatt.java +++ b/core/java/android/bluetooth/BluetoothGatt.java @@ -422,7 +422,7 @@ public final class BluetoothGatt implements BluetoothProfile { try { mAuthRetry = true; mService.writeDescriptor(mClientIf, address, handle, - descriptor.getCharacteristic().getWriteType(), + BluetoothGattCharacteristic.WRITE_TYPE_DEFAULT, AUTHENTICATION_MITM, descriptor.getValue()); return; } catch (RemoteException e) { @@ -943,7 +943,8 @@ public final class BluetoothGatt implements BluetoothProfile { try { mService.writeDescriptor(mClientIf, device.getAddress(), descriptor.getInstanceId(), - characteristic.getWriteType(), AUTHENTICATION_NONE, descriptor.getValue()); + BluetoothGattCharacteristic.WRITE_TYPE_DEFAULT, AUTHENTICATION_NONE, + descriptor.getValue()); } catch (RemoteException e) { Log.e(TAG,"",e); mDeviceBusy = false;