in rx-central-ble-sample/src/main/java/com/uber/rxcentralble/sample/NameScanMatcher.java [20:45]
public ObservableTransformer<ScanData, ScanData> match() {
return scanDataStream ->
scanDataStream
.filter(scanData -> {
String scanRecordName = "";
String deviceName = "";
String adDataName = "";
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
scanRecordName = getScanRecordName(scanData);
}
if (scanData.getBluetoothDevice().getName() != null) {
deviceName = scanData.getBluetoothDevice().getName();
}
if (scanData.getParsedAdvertisement() != null
&& scanData.getParsedAdvertisement().getName() != null) {
adDataName = scanData.getParsedAdvertisement().getName();
}
return scanRecordName.contentEquals(name)
|| deviceName.contentEquals(name)
|| adDataName.contentEquals(name);
});
}