Discover primary service by UUID for PTS tests (4/4)
Bug: 38123054 Test: manual Change-Id: I89e088e60f4325f1ece59d22efda0c907a3b716a
This commit is contained in:
@@ -16,7 +16,6 @@
|
||||
|
||||
package android.bluetooth;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.Handler;
|
||||
import android.os.ParcelUuid;
|
||||
import android.os.RemoteException;
|
||||
@@ -926,6 +925,31 @@ public final class BluetoothGatt implements BluetoothProfile {
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Discovers a service by UUID. This is exposed only for passing PTS tests.
|
||||
* It should never be used by real applications. The service is not searched
|
||||
* for characteristics and descriptors, or returned in any callback.
|
||||
*
|
||||
* <p>Requires {@link android.Manifest.permission#BLUETOOTH} permission.
|
||||
*
|
||||
* @return true, if the remote service discovery has been started
|
||||
* @hide
|
||||
*/
|
||||
public boolean discoverServiceByUuid(UUID uuid) {
|
||||
if (DBG) Log.d(TAG, "discoverServiceByUuid() - device: " + mDevice.getAddress());
|
||||
if (mService == null || mClientIf == 0) return false;
|
||||
|
||||
mServices.clear();
|
||||
|
||||
try {
|
||||
mService.discoverServiceByUuid(mClientIf, mDevice.getAddress(), new ParcelUuid(uuid));
|
||||
} catch (RemoteException e) {
|
||||
Log.e(TAG, "", e);
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a list of GATT services offered by the remote device.
|
||||
*
|
||||
|
||||
@@ -76,6 +76,7 @@ interface IBluetoothGatt {
|
||||
void clientReadPhy(in int clientIf, in String address);
|
||||
void refreshDevice(in int clientIf, in String address);
|
||||
void discoverServices(in int clientIf, in String address);
|
||||
void discoverServiceByUuid(in int clientIf, in String address, in ParcelUuid uuid);
|
||||
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);
|
||||
|
||||
Reference in New Issue
Block a user