Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit c60e8aae authored by Hemant Gupta's avatar Hemant Gupta Committed by Andre Eisenbach
Browse files

MAP: Track ProfileState, register and unregister of BroadcastReceivers

Use Case:
1. Pair and connect with remote phone.
2. Verify successful profile connection.
3. Pair & Connect LE device.
4. Disconnect & Unpair LE device.
5. Reset BT multiple times.
6. Repeat above steps 50 times

Failure:
BT Crashed, failed to start MAP services after BT reset.

RootCause:
BT Crash for not handling following exceptions:

 - java.lang.IllegalArgumentException: Receiver not registered
   at: android.app.IntentReceiverLeaked: Service
   com.android.bluetooth.map.BluetoothMapService
   has leaked IntentReceiver com.android.bluetooth.map.BluetoothMapAppObserver:
   Are you missing a call to unregisterReceiver()?

Fix:
 - This issue is hit when onStop() for MAPService is triggered without onStart()
   being triggered by the time shutdown process gets invoked.
 - Track registration and unregistration for BluetoothMapAppObserver BroadcastReceiver
   to fix IntentReceiver leaks and also added validation for the AppObserver Data.

Change-Id: Ia1c2160fef369bbff42e8da3ea7d925c483e0a12
parent 439940e7
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment