summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Rahul Sabnis <rahulsabnis@google.com> 2020-01-29 11:53:10 -0800
committer Rahul Sabnis <rahulsabnis@google.com> 2020-01-29 11:53:10 -0800
commit791dedb43f1350db901aa6f91215deecced7757b (patch)
tree8f9ad3a81e6b30c5641b0ef3421c5359685ae7db
parentd4454de42fe98655ea374ff5c951b33c0e26e113 (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.java27
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