public Set<BluetoothDevice> getCandidateDevices() { Set<BluetoothDevice> candidates = new HashSet<>(); for (BluetoothDevice device : getPairedDevices()) { if (device.getName().startsWith( BluetoothVehicleInterface.DEVICE_NAME_PREFIX)) { candidates.add(device); } } SharedPreferences preferences = mContext.getSharedPreferences(KNOWN_BLUETOOTH_DEVICE_PREFERENCES, Context.MODE_MULTI_PROCESS); Set<String> detectedDevices = SupportSettingsUtils.getStringSet( preferences, KNOWN_BLUETOOTH_DEVICE_PREF_KEY, new HashSet<String>()); for (String address : detectedDevices) { if (BluetoothAdapter.checkBluetoothAddress(address)) { candidates.add(getDefaultAdapter().getRemoteDevice(address)); } } for (BluetoothDevice candidate : candidates) { Log.d(TAG, "Found previously discovered or paired OpenXC BT VI " + candidate.getAddress()); } return candidates; }
private void fillBluetoothDeviceList() { for(BluetoothDevice device : mBluetoothDeviceManager.getPairedDevices()) { mDiscoveredDevices.put(device.getAddress(), device.getName() + " (" + device.getAddress() + ")"); } persistCandidateDiscoveredDevices(); mBluetoothDeviceManager.startDiscovery(); }