Merge "Fix BLE scan result filtering in CompanionDeviceManager." into rvc-dev

This commit is contained in:
TreeHugger Robot
2020-06-17 20:35:47 +00:00
committed by Android (Google) Code Review
2 changed files with 5 additions and 16 deletions

View File

@@ -51,13 +51,6 @@ public class BluetoothDeviceFilterUtils {
return s == null ? null : Pattern.compile(s);
}
static boolean matches(ScanFilter filter, BluetoothDevice device) {
boolean result = matchesAddress(filter.getDeviceAddress(), device)
&& matchesServiceUuid(filter.getServiceUuid(), filter.getServiceUuidMask(), device);
if (DEBUG) debugLogMatchResult(result, device, filter);
return result;
}
static boolean matchesAddress(String deviceAddress, BluetoothDevice device) {
final boolean result = deviceAddress == null
|| (device != null && deviceAddress.equals(device.getAddress()));

View File

@@ -37,7 +37,6 @@ import android.util.Log;
import com.android.internal.util.BitUtils;
import com.android.internal.util.ObjectUtils;
import com.android.internal.util.Preconditions;
import libcore.util.HexEncoding;
@@ -166,21 +165,18 @@ public final class BluetoothLeDeviceFilter implements DeviceFilter<ScanResult> {
/** @hide */
@Override
public boolean matches(ScanResult device) {
boolean result = matches(device.getDevice())
public boolean matches(ScanResult scanResult) {
BluetoothDevice device = scanResult.getDevice();
boolean result = getScanFilter().matches(scanResult)
&& BluetoothDeviceFilterUtils.matchesName(getNamePattern(), device)
&& (mRawDataFilter == null
|| BitUtils.maskedEquals(device.getScanRecord().getBytes(),
|| BitUtils.maskedEquals(scanResult.getScanRecord().getBytes(),
mRawDataFilter, mRawDataFilterMask));
if (DEBUG) Log.i(LOG_TAG, "matches(this = " + this + ", device = " + device +
") -> " + result);
return result;
}
private boolean matches(BluetoothDevice device) {
return BluetoothDeviceFilterUtils.matches(getScanFilter(), device)
&& BluetoothDeviceFilterUtils.matchesName(getNamePattern(), device);
}
/** @hide */
@Override
public int getMediumType() {