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

Commit 114cacf2 authored by Jordan Liu's avatar Jordan Liu Committed by android-build-merger
Browse files

Merge "Refresh subscription info when subid changes"

am: 5226ac61

Change-Id: I874fb7e8f3d3146cb614de3ee088e93c1863a592
parents b951ba66 5226ac61
Loading
Loading
Loading
Loading
+14 −2
Original line number Diff line number Diff line
@@ -104,6 +104,7 @@ public class ApnSettings extends RestrictedSettingsFragment implements
    private RestoreApnProcessHandler mRestoreApnProcessHandler;
    private HandlerThread mRestoreDefaultApnThread;
    private SubscriptionInfo mSubscriptionInfo;
    private int mSubId;
    private UiccController mUiccController;
    private String mMvnoType;
    private String mMvnoMatchData;
@@ -139,6 +140,13 @@ public class ApnSettings extends RestrictedSettingsFragment implements
            } else if(intent.getAction().equals(
                    TelephonyManager.ACTION_SUBSCRIPTION_CARRIER_IDENTITY_CHANGED)) {
                if (!mRestoreDefaultApnMode) {
                    int extraSubId = intent.getIntExtra(TelephonyManager.EXTRA_SUBSCRIPTION_ID,
                            SubscriptionManager.INVALID_SUBSCRIPTION_ID);
                    if (extraSubId != mSubId) {
                        // subscription has changed
                        mSubId = extraSubId;
                        mSubscriptionInfo = getSubscriptionInfo(mSubId);
                    }
                    fillList();
                }
            }
@@ -163,7 +171,7 @@ public class ApnSettings extends RestrictedSettingsFragment implements
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        final Activity activity = getActivity();
        final int subId = activity.getIntent().getIntExtra(SUB_ID,
        mSubId = activity.getIntent().getIntExtra(SUB_ID,
                SubscriptionManager.INVALID_SUBSCRIPTION_ID);

        mIntentFilter = new IntentFilter(
@@ -172,7 +180,7 @@ public class ApnSettings extends RestrictedSettingsFragment implements

        setIfOnlyAvailableForAdmins(true);

        mSubscriptionInfo = SubscriptionManager.from(activity).getActiveSubscriptionInfo(subId);
        mSubscriptionInfo = getSubscriptionInfo(mSubId);
        mUiccController = UiccController.getInstance();

        CarrierConfigManager configManager = (CarrierConfigManager)
@@ -253,6 +261,10 @@ public class ApnSettings extends RestrictedSettingsFragment implements
        return null;
    }

    private SubscriptionInfo getSubscriptionInfo(int subId) {
        return SubscriptionManager.from(getActivity()).getActiveSubscriptionInfo(subId);
    }

    private void fillList() {
        final TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
        final int subId = mSubscriptionInfo != null ? mSubscriptionInfo.getSubscriptionId()