Close AirplaneModeEnabler once lifecycle classes are destroyed.

The AirplaneModeEnabler is a ContentObserver, and it must be closed when
the object containing it is deleted. Otherwise, it will continue to
exist and cause a memory leak.

Test: atest -c SettingsUnitTest
Bug: 177265744

Change-Id: Idd48b601be1133ee02010e23d8dcb394d1e29bd3
This commit is contained in:
Jeremy Goldman
2021-06-17 10:20:42 +08:00
parent 5a8476a709
commit 1585e6726c
2 changed files with 14 additions and 1 deletions

View File

@@ -459,6 +459,12 @@ public class NetworkProviderSettings extends RestrictedSettingsFragment
super.onStop();
}
@Override
public void onDestroy() {
mAirplaneModeEnabler.close();
super.onDestroy();
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);