diff options
| author | 2020-01-29 11:53:10 -0800 | |
|---|---|---|
| committer | 2020-01-29 11:53:10 -0800 | |
| commit | 791dedb43f1350db901aa6f91215deecced7757b (patch) | |
| tree | 8f9ad3a81e6b30c5641b0ef3421c5359685ae7db | |
| parent | d4454de42fe98655ea374ff5c951b33c0e26e113 (diff) | |
Add api BluetoothAdapter.getMostRecentlyConnectedDevices() to be able to
get connected devices ordered by how recently they were connected
Bug: 130984590
Test: Manual
Change-Id: Ie5d0c7a8e6bc5daad5ff14064b0c65b7c4c5e6b0
| -rw-r--r-- | core/java/android/bluetooth/BluetoothAdapter.java | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/core/java/android/bluetooth/BluetoothAdapter.java b/core/java/android/bluetooth/BluetoothAdapter.java index 8415ecd38b75..b6d096c2524a 100644 --- a/core/java/android/bluetooth/BluetoothAdapter.java +++ b/core/java/android/bluetooth/BluetoothAdapter.java @@ -2162,6 +2162,33 @@ public final class BluetoothAdapter { } /** + * Fetches a list of the most recently connected bluetooth devices ordered by how recently they + * were connected with most recently first and least recently last + * + * @return {@link List} of bonded {@link BluetoothDevice} ordered by how recently they were + * connected + * + * @hide + */ + @RequiresPermission(Manifest.permission.BLUETOOTH_ADMIN) + public @NonNull List<BluetoothDevice> getMostRecentlyConnectedDevices() { + if (getState() != STATE_ON) { + return new ArrayList<>(); + } + try { + mServiceLock.readLock().lock(); + if (mService != null) { + return mService.getMostRecentlyConnectedDevices(); + } + } catch (RemoteException e) { + Log.e(TAG, "", e); + } finally { + mServiceLock.readLock().unlock(); + } + return new ArrayList<>(); + } + + /** * Return the set of {@link BluetoothDevice} objects that are bonded * (paired) to the local adapter. * <p>If Bluetooth state is not {@link #STATE_ON}, this API |