Merge "Read by UUID for PTS tests (1/5)"
This commit is contained in:
@@ -946,6 +946,41 @@ public final class BluetoothGatt implements BluetoothProfile {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reads the characteristic using its UUID from the associated remote device.
|
||||||
|
*
|
||||||
|
* <p>This is an asynchronous operation. The result of the read operation
|
||||||
|
* is reported by the {@link BluetoothGattCallback#onCharacteristicRead}
|
||||||
|
* callback.
|
||||||
|
*
|
||||||
|
* <p>Requires {@link android.Manifest.permission#BLUETOOTH} permission.
|
||||||
|
*
|
||||||
|
* @param uuid UUID of characteristic to read from the remote device
|
||||||
|
* @return true, if the read operation was initiated successfully
|
||||||
|
* @hide
|
||||||
|
*/
|
||||||
|
public boolean readUsingCharacteristicUuid(UUID uuid, int startHandle, int endHandle) {
|
||||||
|
if (VDBG) Log.d(TAG, "readUsingCharacteristicUuid() - uuid: " + uuid);
|
||||||
|
if (mService == null || mClientIf == 0) return false;
|
||||||
|
|
||||||
|
synchronized(mDeviceBusy) {
|
||||||
|
if (mDeviceBusy) return false;
|
||||||
|
mDeviceBusy = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
mService.readUsingCharacteristicUuid(mClientIf, mDevice.getAddress(),
|
||||||
|
new ParcelUuid(uuid), startHandle, endHandle, AUTHENTICATION_NONE);
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
Log.e(TAG,"",e);
|
||||||
|
mDeviceBusy = false;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Writes a given characteristic and its values to the associated remote device.
|
* Writes a given characteristic and its values to the associated remote device.
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -77,6 +77,8 @@ interface IBluetoothGatt {
|
|||||||
void refreshDevice(in int clientIf, in String address);
|
void refreshDevice(in int clientIf, in String address);
|
||||||
void discoverServices(in int clientIf, in String address);
|
void discoverServices(in int clientIf, in String address);
|
||||||
void readCharacteristic(in int clientIf, in String address, in int handle, in int authReq);
|
void readCharacteristic(in int clientIf, in String address, in int handle, in int authReq);
|
||||||
|
void readUsingCharacteristicUuid(in int clientIf, in String address, in ParcelUuid uuid,
|
||||||
|
in int startHandle, in int endHandle, in int authReq);
|
||||||
void writeCharacteristic(in int clientIf, in String address, in int handle,
|
void writeCharacteristic(in int clientIf, in String address, in int handle,
|
||||||
in int writeType, in int authReq, in byte[] value);
|
in int writeType, in int authReq, in byte[] value);
|
||||||
void readDescriptor(in int clientIf, in String address, in int handle, in int authReq);
|
void readDescriptor(in int clientIf, in String address, in int handle, in int authReq);
|
||||||
|
|||||||
Reference in New Issue
Block a user