Oreo (8.1.0) BLE scanning not working with filters

Multi tool use
up vote
0
down vote
favorite
When I initialize BLE scanning, I am able to successfully see all devices when I use the following code (in foreground, with Nokia 1 running Android 8.1.0):
ScanSettings settings = (new ScanSettings.Builder().setScanMode(ScanSettings.SCAN_MODE_LOW_POWER)).build();
List<ScanFilter> filters = new ArrayList<>();
ScanFilter filter = new ScanFilter.Builder().build();
filters.add(filter);
BluetoothManager bluetoothManager =
(BluetoothManager) getApplicationContext().getSystemService(Context.BLUETOOTH_SERVICE);
BluetoothAdapter bluetoothAdapter = bluetoothManager.getAdapter();
Intent intent = new Intent(getApplicationContext(), PendingIntentScanReceiver.class);
intent.putExtra("o-scan", true);
PendingIntent pendingIntent = PendingIntent.getBroadcast(getApplicationContext(),
0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
bluetoothAdapter.getBluetoothLeScanner().startScan(filters, settings, pendingIntent);
But as soon as I modify the list of filters (lines 2 - 4 in example) like this:
ScanFilter filter = new ScanFilter.Builder()
.setDeviceAddress("54:6C:0E:20:E6:1B")
// or instead of setDeviceAddress trying this:
.setServiceUuid(ParcelUuid.fromString("0000a1b0-0000-1000-8000-00805f9b34fb"))
.build();
filters.add(filter);
I am no longer able to see anything. Any thoughts on what might be going on here?

add a comment |
up vote
0
down vote
favorite
When I initialize BLE scanning, I am able to successfully see all devices when I use the following code (in foreground, with Nokia 1 running Android 8.1.0):
ScanSettings settings = (new ScanSettings.Builder().setScanMode(ScanSettings.SCAN_MODE_LOW_POWER)).build();
List<ScanFilter> filters = new ArrayList<>();
ScanFilter filter = new ScanFilter.Builder().build();
filters.add(filter);
BluetoothManager bluetoothManager =
(BluetoothManager) getApplicationContext().getSystemService(Context.BLUETOOTH_SERVICE);
BluetoothAdapter bluetoothAdapter = bluetoothManager.getAdapter();
Intent intent = new Intent(getApplicationContext(), PendingIntentScanReceiver.class);
intent.putExtra("o-scan", true);
PendingIntent pendingIntent = PendingIntent.getBroadcast(getApplicationContext(),
0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
bluetoothAdapter.getBluetoothLeScanner().startScan(filters, settings, pendingIntent);
But as soon as I modify the list of filters (lines 2 - 4 in example) like this:
ScanFilter filter = new ScanFilter.Builder()
.setDeviceAddress("54:6C:0E:20:E6:1B")
// or instead of setDeviceAddress trying this:
.setServiceUuid(ParcelUuid.fromString("0000a1b0-0000-1000-8000-00805f9b34fb"))
.build();
filters.add(filter);
I am no longer able to see anything. Any thoughts on what might be going on here?

add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
When I initialize BLE scanning, I am able to successfully see all devices when I use the following code (in foreground, with Nokia 1 running Android 8.1.0):
ScanSettings settings = (new ScanSettings.Builder().setScanMode(ScanSettings.SCAN_MODE_LOW_POWER)).build();
List<ScanFilter> filters = new ArrayList<>();
ScanFilter filter = new ScanFilter.Builder().build();
filters.add(filter);
BluetoothManager bluetoothManager =
(BluetoothManager) getApplicationContext().getSystemService(Context.BLUETOOTH_SERVICE);
BluetoothAdapter bluetoothAdapter = bluetoothManager.getAdapter();
Intent intent = new Intent(getApplicationContext(), PendingIntentScanReceiver.class);
intent.putExtra("o-scan", true);
PendingIntent pendingIntent = PendingIntent.getBroadcast(getApplicationContext(),
0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
bluetoothAdapter.getBluetoothLeScanner().startScan(filters, settings, pendingIntent);
But as soon as I modify the list of filters (lines 2 - 4 in example) like this:
ScanFilter filter = new ScanFilter.Builder()
.setDeviceAddress("54:6C:0E:20:E6:1B")
// or instead of setDeviceAddress trying this:
.setServiceUuid(ParcelUuid.fromString("0000a1b0-0000-1000-8000-00805f9b34fb"))
.build();
filters.add(filter);
I am no longer able to see anything. Any thoughts on what might be going on here?

When I initialize BLE scanning, I am able to successfully see all devices when I use the following code (in foreground, with Nokia 1 running Android 8.1.0):
ScanSettings settings = (new ScanSettings.Builder().setScanMode(ScanSettings.SCAN_MODE_LOW_POWER)).build();
List<ScanFilter> filters = new ArrayList<>();
ScanFilter filter = new ScanFilter.Builder().build();
filters.add(filter);
BluetoothManager bluetoothManager =
(BluetoothManager) getApplicationContext().getSystemService(Context.BLUETOOTH_SERVICE);
BluetoothAdapter bluetoothAdapter = bluetoothManager.getAdapter();
Intent intent = new Intent(getApplicationContext(), PendingIntentScanReceiver.class);
intent.putExtra("o-scan", true);
PendingIntent pendingIntent = PendingIntent.getBroadcast(getApplicationContext(),
0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
bluetoothAdapter.getBluetoothLeScanner().startScan(filters, settings, pendingIntent);
But as soon as I modify the list of filters (lines 2 - 4 in example) like this:
ScanFilter filter = new ScanFilter.Builder()
.setDeviceAddress("54:6C:0E:20:E6:1B")
// or instead of setDeviceAddress trying this:
.setServiceUuid(ParcelUuid.fromString("0000a1b0-0000-1000-8000-00805f9b34fb"))
.build();
filters.add(filter);
I am no longer able to see anything. Any thoughts on what might be going on here?


edited Nov 8 at 19:14


Kling Klang
32.1k156287
32.1k156287
asked Nov 8 at 18:47
wheresmycookie
229216
229216
add a comment |
add a comment |
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53214270%2foreo-8-1-0-ble-scanning-not-working-with-filters%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
y,Bbd miydH32DEq 1LNopnS85KN,D hxyUzj8F Fi9uUb,TO,g