Do not return devices when caller has no location permission
During startLeScan, do not return devices if calling process has no location permission/appop Bug: 21852542 Change-Id: Idce8f4704558574e373e8144390f2a2fa1a7e84a
This commit is contained in:
committed by
Andre Eisenbach
parent
adebbebaa7
commit
a179030483
@@ -36,7 +36,7 @@ interface IBluetoothGatt {
|
||||
|
||||
void startScan(in int appIf, in boolean isServer, in ScanSettings settings,
|
||||
in List<ScanFilter> filters,
|
||||
in List scanStorages);
|
||||
in List scanStorages, in String callingPackage);
|
||||
void stopScan(in int appIf, in boolean isServer);
|
||||
void flushPendingBatchResults(in int appIf, in boolean isServer);
|
||||
void startMultiAdvertising(in int appIf,
|
||||
|
||||
@@ -19,6 +19,7 @@ package android.bluetooth.le;
|
||||
import android.Manifest;
|
||||
import android.annotation.RequiresPermission;
|
||||
import android.annotation.SystemApi;
|
||||
import android.app.ActivityThread;
|
||||
import android.bluetooth.BluetoothAdapter;
|
||||
import android.bluetooth.BluetoothGatt;
|
||||
import android.bluetooth.BluetoothGattCallbackWrapper;
|
||||
@@ -313,7 +314,7 @@ public final class BluetoothLeScanner {
|
||||
mClientIf = clientIf;
|
||||
try {
|
||||
mBluetoothGatt.startScan(mClientIf, false, mSettings, mFilters,
|
||||
mResultStorages);
|
||||
mResultStorages, ActivityThread.currentOpPackageName());
|
||||
} catch (RemoteException e) {
|
||||
Log.e(TAG, "fail to start le scan: " + e);
|
||||
mClientIf = -1;
|
||||
|
||||
Reference in New Issue
Block a user