diff options
| author | 2025-03-13 09:10:36 +0000 | |
|---|---|---|
| committer | 2025-03-14 03:59:02 +0000 | |
| commit | e07ce260abafb67e305a764851d19937446c1757 (patch) | |
| tree | 77dcb5950f5013edf2c1af532aa6dba02db97ada /framework/java | |
| parent | 0d25e6356e9cab0a91b11382f42e2a6de57b5434 (diff) | |
CS: Clear mSessionMap when BluetoothServiceDown
Bug: 403139849
Test: m com.android.bt
Flag: EXEMPT bugfix
Ignore-AOSP-First: not AOSP first anymore
Change-Id: I557c12a638677fd15e2363dda32f0eee0142dc46
Diffstat (limited to 'framework/java')
| -rw-r--r-- | framework/java/android/bluetooth/BluetoothAdapter.java | 3 | ||||
| -rw-r--r-- | framework/java/android/bluetooth/le/DistanceMeasurementManager.java | 11 |
2 files changed, 14 insertions, 0 deletions
diff --git a/framework/java/android/bluetooth/BluetoothAdapter.java b/framework/java/android/bluetooth/BluetoothAdapter.java index 40d1153581..1b37497323 100644 --- a/framework/java/android/bluetooth/BluetoothAdapter.java +++ b/framework/java/android/bluetooth/BluetoothAdapter.java @@ -3686,6 +3686,9 @@ public final class BluetoothAdapter { if (mBluetoothLeScanner != null) { mBluetoothLeScanner.cleanup(); } + if (mDistanceMeasurementManager != null) { + mDistanceMeasurementManager.cleanup(); + } } } finally { mServiceLock.writeLock().unlock(); diff --git a/framework/java/android/bluetooth/le/DistanceMeasurementManager.java b/framework/java/android/bluetooth/le/DistanceMeasurementManager.java index 6209e31946..d8a7103721 100644 --- a/framework/java/android/bluetooth/le/DistanceMeasurementManager.java +++ b/framework/java/android/bluetooth/le/DistanceMeasurementManager.java @@ -24,6 +24,7 @@ import static java.util.Objects.requireNonNull; import android.annotation.FlaggedApi; import android.annotation.NonNull; import android.annotation.Nullable; +import android.annotation.RequiresNoPermission; import android.annotation.RequiresPermission; import android.annotation.SuppressLint; import android.annotation.SystemApi; @@ -271,6 +272,16 @@ public final class DistanceMeasurementManager { return Collections.emptySet(); } + /** + * Clear session map. Should be called when bluetooth is down. + * + * @hide + */ + @RequiresNoPermission + public void cleanup() { + mSessionMap.clear(); + } + @SuppressLint("AndroidFrameworkBluetoothPermission") private final IDistanceMeasurementCallback mCallbackWrapper = new IDistanceMeasurementCallback.Stub() { |