Clean up lifecycle in MobileNetworkSettings
To avoid double registering, which prevent potential issues and could improve latency. Since DashboardFragment already supported register lifecycle automatically for the controllers bound by XML which implements androidx.lifecycle.Lifecycle, so doing a cleanup to prevent register lifecycle event manually (doubling). Bug: 149338098 Test: temporarily add logging to make sure the lifecycle method is called and only called once Change-Id: I4dbc36414991ef6b599be61aa77ff0dc8c52468c
This commit is contained in:
@@ -61,12 +61,9 @@ public class ContactDiscoveryPreferenceController extends TelephonyTogglePrefere
|
||||
mCarrierConfigCache = CarrierConfigCache.getInstance(context);
|
||||
}
|
||||
|
||||
public ContactDiscoveryPreferenceController init(FragmentManager fragmentManager, int subId,
|
||||
Lifecycle lifecycle) {
|
||||
void init(FragmentManager fragmentManager, int subId) {
|
||||
mFragmentManager = fragmentManager;
|
||||
mSubId = subId;
|
||||
lifecycle.addObserver(this);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -25,7 +25,6 @@ import android.os.Looper;
|
||||
import android.telephony.SubscriptionManager;
|
||||
import android.telephony.TelephonyManager;
|
||||
|
||||
import androidx.lifecycle.Lifecycle;
|
||||
import androidx.lifecycle.LifecycleObserver;
|
||||
import androidx.lifecycle.OnLifecycleEvent;
|
||||
import androidx.preference.Preference;
|
||||
@@ -52,10 +51,9 @@ public class DataDuringCallsPreferenceController extends TelephonyTogglePreferen
|
||||
super(context, preferenceKey);
|
||||
}
|
||||
|
||||
public void init(Lifecycle lifecycle, int subId) {
|
||||
void init(int subId) {
|
||||
this.mSubId = subId;
|
||||
mManager = mContext.getSystemService(TelephonyManager.class).createForSubscriptionId(subId);
|
||||
lifecycle.addObserver(this);
|
||||
}
|
||||
|
||||
@OnLifecycleEvent(ON_RESUME)
|
||||
|
@@ -28,7 +28,6 @@ import android.telephony.SubscriptionInfo;
|
||||
import android.telephony.SubscriptionManager;
|
||||
import android.view.View;
|
||||
|
||||
import androidx.lifecycle.Lifecycle;
|
||||
import androidx.lifecycle.LifecycleObserver;
|
||||
import androidx.lifecycle.OnLifecycleEvent;
|
||||
import androidx.preference.ListPreference;
|
||||
@@ -72,10 +71,6 @@ public abstract class DefaultSubscriptionController extends TelephonyBasePrefere
|
||||
== View.LAYOUT_DIRECTION_RTL;
|
||||
}
|
||||
|
||||
public void init(Lifecycle lifecycle) {
|
||||
lifecycle.addObserver(this);
|
||||
}
|
||||
|
||||
/** @return SubscriptionInfo for the default subscription for the service, or null if there
|
||||
* isn't one. */
|
||||
protected abstract SubscriptionInfo getDefaultSubscriptionInfo();
|
||||
|
@@ -22,7 +22,6 @@ import static androidx.lifecycle.Lifecycle.Event.ON_RESUME;
|
||||
import android.content.Context;
|
||||
import android.telephony.SubscriptionManager;
|
||||
|
||||
import androidx.lifecycle.Lifecycle;
|
||||
import androidx.lifecycle.LifecycleObserver;
|
||||
import androidx.lifecycle.OnLifecycleEvent;
|
||||
import androidx.preference.PreferenceCategory;
|
||||
@@ -53,8 +52,7 @@ public class DisabledSubscriptionController extends TelephonyBasePreferenceContr
|
||||
/**
|
||||
* Re-initialize the configuration based on subscription id provided
|
||||
*/
|
||||
public void init(Lifecycle lifecycle, int subId) {
|
||||
lifecycle.addObserver(this);
|
||||
public void init(int subId) {
|
||||
mSubId = subId;
|
||||
}
|
||||
|
||||
|
@@ -28,7 +28,6 @@ import android.telephony.TelephonyManager;
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
import androidx.lifecycle.Lifecycle;
|
||||
import androidx.lifecycle.LifecycleObserver;
|
||||
import androidx.lifecycle.OnLifecycleEvent;
|
||||
import androidx.preference.ListPreference;
|
||||
@@ -163,7 +162,7 @@ public class EnabledNetworkModePreferenceController extends
|
||||
return false;
|
||||
}
|
||||
|
||||
public void init(Lifecycle lifecycle, int subId) {
|
||||
void init(int subId) {
|
||||
mSubId = subId;
|
||||
mTelephonyManager = mContext.getSystemService(TelephonyManager.class)
|
||||
.createForSubscriptionId(mSubId);
|
||||
@@ -178,7 +177,6 @@ public class EnabledNetworkModePreferenceController extends
|
||||
updatePreference();
|
||||
});
|
||||
}
|
||||
lifecycle.addObserver(this);
|
||||
}
|
||||
|
||||
private void updatePreference() {
|
||||
|
@@ -176,14 +176,12 @@ public class MobileNetworkSettings extends AbstractMobileNetworkSettings {
|
||||
if (dataUsageSummaryPreferenceController != null) {
|
||||
dataUsageSummaryPreferenceController.init(mSubId);
|
||||
}
|
||||
use(CallsDefaultSubscriptionController.class).init(getLifecycle());
|
||||
use(SmsDefaultSubscriptionController.class).init(getLifecycle());
|
||||
use(MobileNetworkSwitchController.class).init(getLifecycle(), mSubId);
|
||||
use(MobileNetworkSwitchController.class).init(mSubId);
|
||||
use(CarrierSettingsVersionPreferenceController.class).init(mSubId);
|
||||
use(BillingCyclePreferenceController.class).init(mSubId);
|
||||
use(MmsMessagePreferenceController.class).init(mSubId);
|
||||
use(DataDuringCallsPreferenceController.class).init(getLifecycle(), mSubId);
|
||||
use(DisabledSubscriptionController.class).init(getLifecycle(), mSubId);
|
||||
use(DataDuringCallsPreferenceController.class).init(mSubId);
|
||||
use(DisabledSubscriptionController.class).init(mSubId);
|
||||
use(DeleteSimProfilePreferenceController.class).init(mSubId, this,
|
||||
REQUEST_CODE_DELETE_SUBSCRIPTION);
|
||||
use(DisableSimFooterPreferenceController.class).init(mSubId);
|
||||
@@ -197,7 +195,7 @@ public class MobileNetworkSettings extends AbstractMobileNetworkSettings {
|
||||
use(CarrierPreferenceController.class).init(mSubId);
|
||||
use(DataUsagePreferenceController.class).init(mSubId);
|
||||
use(PreferredNetworkModePreferenceController.class).init(mSubId);
|
||||
use(EnabledNetworkModePreferenceController.class).init(getLifecycle(), mSubId);
|
||||
use(EnabledNetworkModePreferenceController.class).init(mSubId);
|
||||
use(DataServiceSetupPreferenceController.class).init(mSubId);
|
||||
use(Enable2gPreferenceController.class).init(mSubId);
|
||||
use(CarrierWifiTogglePreferenceController.class).init(getLifecycle(), mSubId);
|
||||
@@ -206,12 +204,12 @@ public class MobileNetworkSettings extends AbstractMobileNetworkSettings {
|
||||
use(WifiCallingPreferenceController.class).init(mSubId);
|
||||
|
||||
final OpenNetworkSelectPagePreferenceController openNetworkSelectPagePreferenceController =
|
||||
use(OpenNetworkSelectPagePreferenceController.class).init(getLifecycle(), mSubId);
|
||||
use(OpenNetworkSelectPagePreferenceController.class).init(mSubId);
|
||||
final AutoSelectPreferenceController autoSelectPreferenceController =
|
||||
use(AutoSelectPreferenceController.class)
|
||||
.init(getLifecycle(), mSubId)
|
||||
.init(mSubId)
|
||||
.addListener(openNetworkSelectPagePreferenceController);
|
||||
use(NetworkPreferenceCategoryController.class).init(getLifecycle(), mSubId)
|
||||
use(NetworkPreferenceCategoryController.class).init(mSubId)
|
||||
.setChildren(Arrays.asList(autoSelectPreferenceController));
|
||||
mCdmaSystemSelectPreferenceController = use(CdmaSystemSelectPreferenceController.class);
|
||||
mCdmaSystemSelectPreferenceController.init(getPreferenceManager(), mSubId);
|
||||
@@ -231,8 +229,7 @@ public class MobileNetworkSettings extends AbstractMobileNetworkSettings {
|
||||
.addListener(videoCallingPreferenceController);
|
||||
use(Enhanced4gAdvancedCallingPreferenceController.class).init(mSubId)
|
||||
.addListener(videoCallingPreferenceController);
|
||||
use(ContactDiscoveryPreferenceController.class).init(getParentFragmentManager(), mSubId,
|
||||
getLifecycle());
|
||||
use(ContactDiscoveryPreferenceController.class).init(getParentFragmentManager(), mSubId);
|
||||
use(NrAdvancedCallingPreferenceController.class).init(mSubId);
|
||||
}
|
||||
|
||||
|
@@ -23,7 +23,6 @@ import android.content.Context;
|
||||
import android.telephony.SubscriptionInfo;
|
||||
import android.telephony.SubscriptionManager;
|
||||
|
||||
import androidx.lifecycle.Lifecycle;
|
||||
import androidx.lifecycle.LifecycleObserver;
|
||||
import androidx.lifecycle.OnLifecycleEvent;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
@@ -49,8 +48,7 @@ public class MobileNetworkSwitchController extends BasePreferenceController impl
|
||||
mChangeListener = new SubscriptionsChangeListener(context, this);
|
||||
}
|
||||
|
||||
public void init(Lifecycle lifecycle, int subId) {
|
||||
lifecycle.addObserver(this);
|
||||
void init(int subId) {
|
||||
mSubId = subId;
|
||||
}
|
||||
|
||||
|
@@ -22,7 +22,6 @@ import static androidx.lifecycle.Lifecycle.Event.ON_STOP;
|
||||
import android.content.Context;
|
||||
import android.telephony.SubscriptionManager;
|
||||
|
||||
import androidx.lifecycle.Lifecycle;
|
||||
import androidx.lifecycle.LifecycleObserver;
|
||||
import androidx.lifecycle.OnLifecycleEvent;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
@@ -69,10 +68,9 @@ public class NetworkPreferenceCategoryController extends PreferenceCategoryContr
|
||||
mPreferenceScreen = screen;
|
||||
}
|
||||
|
||||
public NetworkPreferenceCategoryController init(Lifecycle lifecycle, int subId) {
|
||||
NetworkPreferenceCategoryController init(int subId) {
|
||||
mSubId = subId;
|
||||
|
||||
lifecycle.addObserver(this);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
@@ -34,7 +34,6 @@ import android.telephony.SubscriptionManager;
|
||||
import android.telephony.TelephonyManager;
|
||||
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
import androidx.lifecycle.Lifecycle;
|
||||
import androidx.lifecycle.LifecycleObserver;
|
||||
import androidx.lifecycle.OnLifecycleEvent;
|
||||
import androidx.preference.Preference;
|
||||
@@ -206,7 +205,10 @@ public class AutoSelectPreferenceController extends TelephonyTogglePreferenceCon
|
||||
});
|
||||
}
|
||||
|
||||
public AutoSelectPreferenceController init(Lifecycle lifecycle, int subId) {
|
||||
/**
|
||||
* Initialization based on given subscription id.
|
||||
**/
|
||||
public AutoSelectPreferenceController init(int subId) {
|
||||
mSubId = subId;
|
||||
mTelephonyManager = mContext.getSystemService(TelephonyManager.class)
|
||||
.createForSubscriptionId(mSubId);
|
||||
@@ -217,7 +219,6 @@ public class AutoSelectPreferenceController extends TelephonyTogglePreferenceCon
|
||||
CarrierConfigManager.KEY_ONLY_AUTO_SELECT_IN_HOME_NETWORK_BOOL)
|
||||
: false;
|
||||
|
||||
lifecycle.addObserver(this);
|
||||
return this;
|
||||
}
|
||||
|
||||
|
@@ -26,7 +26,6 @@ import android.telephony.ServiceState;
|
||||
import android.telephony.SubscriptionManager;
|
||||
import android.telephony.TelephonyManager;
|
||||
|
||||
import androidx.lifecycle.Lifecycle;
|
||||
import androidx.lifecycle.LifecycleObserver;
|
||||
import androidx.lifecycle.OnLifecycleEvent;
|
||||
import androidx.preference.Preference;
|
||||
@@ -118,11 +117,13 @@ public class OpenNetworkSelectPagePreferenceController extends
|
||||
}
|
||||
}
|
||||
|
||||
public OpenNetworkSelectPagePreferenceController init(Lifecycle lifecycle, int subId) {
|
||||
/**
|
||||
* Initialization based on given subscription id.
|
||||
**/
|
||||
public OpenNetworkSelectPagePreferenceController init(int subId) {
|
||||
mSubId = subId;
|
||||
mTelephonyManager = mContext.getSystemService(TelephonyManager.class)
|
||||
.createForSubscriptionId(mSubId);
|
||||
lifecycle.addObserver(this);
|
||||
return this;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user