Merge changes from topic "BT-result-storage-descriptor-remove"
* changes: Bluetooth: deprecate TruncatedFilter and ResultStorageDescriptor Get rid of ResultStorageDescriptor in startScan
This commit is contained in:
committed by
Android (Google) Code Review
commit
079f0dfb20
@@ -2213,17 +2213,17 @@ package android.bluetooth.le {
|
||||
public final class BluetoothLeScanner {
|
||||
method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_SCAN, android.Manifest.permission.UPDATE_DEVICE_STATS}) public void startScanFromSource(android.os.WorkSource, android.bluetooth.le.ScanCallback);
|
||||
method @RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_SCAN, android.Manifest.permission.UPDATE_DEVICE_STATS}) public void startScanFromSource(java.util.List<android.bluetooth.le.ScanFilter>, android.bluetooth.le.ScanSettings, android.os.WorkSource, android.bluetooth.le.ScanCallback);
|
||||
method @RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN) public void startTruncatedScan(java.util.List<android.bluetooth.le.TruncatedFilter>, android.bluetooth.le.ScanSettings, android.bluetooth.le.ScanCallback);
|
||||
method @Deprecated @RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN) public void startTruncatedScan(java.util.List<android.bluetooth.le.TruncatedFilter>, android.bluetooth.le.ScanSettings, android.bluetooth.le.ScanCallback);
|
||||
}
|
||||
|
||||
public final class ResultStorageDescriptor implements android.os.Parcelable {
|
||||
ctor public ResultStorageDescriptor(int, int, int);
|
||||
method public int describeContents();
|
||||
method public int getLength();
|
||||
method public int getOffset();
|
||||
method public int getType();
|
||||
method public void writeToParcel(android.os.Parcel, int);
|
||||
field @NonNull public static final android.os.Parcelable.Creator<android.bluetooth.le.ResultStorageDescriptor> CREATOR;
|
||||
@Deprecated public final class ResultStorageDescriptor implements android.os.Parcelable {
|
||||
ctor @Deprecated public ResultStorageDescriptor(int, int, int);
|
||||
method @Deprecated public int describeContents();
|
||||
method @Deprecated public int getLength();
|
||||
method @Deprecated public int getOffset();
|
||||
method @Deprecated public int getType();
|
||||
method @Deprecated public void writeToParcel(android.os.Parcel, int);
|
||||
field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.bluetooth.le.ResultStorageDescriptor> CREATOR;
|
||||
}
|
||||
|
||||
public final class ScanFilter implements android.os.Parcelable {
|
||||
@@ -2247,10 +2247,10 @@ package android.bluetooth.le {
|
||||
method public android.bluetooth.le.ScanSettings.Builder setScanResultType(int);
|
||||
}
|
||||
|
||||
public final class TruncatedFilter {
|
||||
ctor public TruncatedFilter(android.bluetooth.le.ScanFilter, java.util.List<android.bluetooth.le.ResultStorageDescriptor>);
|
||||
method public android.bluetooth.le.ScanFilter getFilter();
|
||||
method public java.util.List<android.bluetooth.le.ResultStorageDescriptor> getStorageDescriptors();
|
||||
@Deprecated public final class TruncatedFilter {
|
||||
ctor @Deprecated public TruncatedFilter(android.bluetooth.le.ScanFilter, java.util.List<android.bluetooth.le.ResultStorageDescriptor>);
|
||||
method @Deprecated public android.bluetooth.le.ScanFilter getFilter();
|
||||
method @Deprecated public java.util.List<android.bluetooth.le.ResultStorageDescriptor> getStorageDescriptors();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -151,7 +151,7 @@ public final class BluetoothLeScanner {
|
||||
@RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN)
|
||||
public void startScan(List<ScanFilter> filters, ScanSettings settings,
|
||||
final ScanCallback callback) {
|
||||
startScan(filters, settings, null, callback, /*callbackIntent=*/ null, null);
|
||||
startScan(filters, settings, null, callback, /*callbackIntent=*/ null);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -185,7 +185,7 @@ public final class BluetoothLeScanner {
|
||||
@NonNull PendingIntent callbackIntent) {
|
||||
return startScan(filters,
|
||||
settings != null ? settings : new ScanSettings.Builder().build(),
|
||||
null, null, callbackIntent, null);
|
||||
null, null, callbackIntent);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -231,14 +231,13 @@ public final class BluetoothLeScanner {
|
||||
@SuppressLint("AndroidFrameworkRequiresPermission")
|
||||
public void startScanFromSource(List<ScanFilter> filters, ScanSettings settings,
|
||||
final WorkSource workSource, final ScanCallback callback) {
|
||||
startScan(filters, settings, workSource, callback, null, null);
|
||||
startScan(filters, settings, workSource, callback, null);
|
||||
}
|
||||
|
||||
@RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN)
|
||||
private int startScan(List<ScanFilter> filters, ScanSettings settings,
|
||||
final WorkSource workSource, final ScanCallback callback,
|
||||
final PendingIntent callbackIntent,
|
||||
List<List<ResultStorageDescriptor>> resultStorages) {
|
||||
final PendingIntent callbackIntent) {
|
||||
BluetoothLeUtils.checkAdapterStateOn(mBluetoothAdapter);
|
||||
if (callback == null && callbackIntent == null) {
|
||||
throw new IllegalArgumentException("callback is null");
|
||||
@@ -274,7 +273,7 @@ public final class BluetoothLeScanner {
|
||||
}
|
||||
if (callback != null) {
|
||||
BleScanCallbackWrapper wrapper = new BleScanCallbackWrapper(gatt, filters,
|
||||
settings, workSource, callback, resultStorages);
|
||||
settings, workSource, callback);
|
||||
wrapper.startRegistration();
|
||||
} else {
|
||||
try {
|
||||
@@ -357,8 +356,11 @@ public final class BluetoothLeScanner {
|
||||
/**
|
||||
* Start truncated scan.
|
||||
*
|
||||
* @deprecated this is not used anywhere
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
@Deprecated
|
||||
@SystemApi
|
||||
@RequiresBluetoothScanPermission
|
||||
@RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN)
|
||||
@@ -366,13 +368,10 @@ public final class BluetoothLeScanner {
|
||||
final ScanCallback callback) {
|
||||
int filterSize = truncatedFilters.size();
|
||||
List<ScanFilter> scanFilters = new ArrayList<ScanFilter>(filterSize);
|
||||
List<List<ResultStorageDescriptor>> scanStorages =
|
||||
new ArrayList<List<ResultStorageDescriptor>>(filterSize);
|
||||
for (TruncatedFilter filter : truncatedFilters) {
|
||||
scanFilters.add(filter.getFilter());
|
||||
scanStorages.add(filter.getStorageDescriptors());
|
||||
}
|
||||
startScan(scanFilters, settings, null, callback, null, scanStorages);
|
||||
startScan(scanFilters, settings, null, callback, null);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -397,7 +396,6 @@ public final class BluetoothLeScanner {
|
||||
private final WorkSource mWorkSource;
|
||||
private ScanSettings mSettings;
|
||||
private IBluetoothGatt mBluetoothGatt;
|
||||
private List<List<ResultStorageDescriptor>> mResultStorages;
|
||||
|
||||
// mLeHandle 0: not registered
|
||||
// -2: registration failed because app is scanning to frequently
|
||||
@@ -407,15 +405,13 @@ public final class BluetoothLeScanner {
|
||||
|
||||
public BleScanCallbackWrapper(IBluetoothGatt bluetoothGatt,
|
||||
List<ScanFilter> filters, ScanSettings settings,
|
||||
WorkSource workSource, ScanCallback scanCallback,
|
||||
List<List<ResultStorageDescriptor>> resultStorages) {
|
||||
WorkSource workSource, ScanCallback scanCallback) {
|
||||
mBluetoothGatt = bluetoothGatt;
|
||||
mFilters = filters;
|
||||
mSettings = settings;
|
||||
mWorkSource = workSource;
|
||||
mScanCallback = scanCallback;
|
||||
mScannerId = 0;
|
||||
mResultStorages = resultStorages;
|
||||
}
|
||||
|
||||
public void startRegistration() {
|
||||
@@ -493,7 +489,7 @@ public final class BluetoothLeScanner {
|
||||
} else {
|
||||
mScannerId = scannerId;
|
||||
mBluetoothGatt.startScan(mScannerId, mSettings, mFilters,
|
||||
mResultStorages, mAttributionSource);
|
||||
mAttributionSource);
|
||||
}
|
||||
} catch (RemoteException e) {
|
||||
Log.e(TAG, "fail to start le scan: " + e);
|
||||
|
||||
@@ -23,8 +23,11 @@ import android.os.Parcelable;
|
||||
/**
|
||||
* Describes the way to store scan result.
|
||||
*
|
||||
* @deprecated this is not used anywhere
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
@Deprecated
|
||||
@SystemApi
|
||||
public final class ResultStorageDescriptor implements Parcelable {
|
||||
private int mType;
|
||||
|
||||
@@ -24,8 +24,11 @@ import java.util.List;
|
||||
/**
|
||||
* A special scan filter that lets the client decide how the scan record should be stored.
|
||||
*
|
||||
* @deprecated this is not used anywhere
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
@Deprecated
|
||||
@SystemApi
|
||||
@SuppressLint("AndroidFrameworkBluetoothPermission")
|
||||
public final class TruncatedFilter {
|
||||
|
||||
Reference in New Issue
Block a user