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

Commit 192d33cb authored by Sarah Chin's avatar Sarah Chin Committed by Gerrit Code Review
Browse files

Merge "Add logic for NR roaming meteredness"

parents 2d13062f 81d272b8
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -325,6 +325,7 @@ public class DcTracker extends Handler {
    private boolean mNrSaAllUnmetered = false;
    private boolean mNrSaMmwaveUnmetered = false;
    private boolean mNrSaSub6Unmetered = false;
    private boolean mRoamingUnmetered = false;

    /* Used to check whether 5G timers are currently active and waiting to go off */
    private boolean mHysteresis = false;
@@ -4032,7 +4033,8 @@ public class DcTracker extends Handler {
        boolean nrUnmetered = isNetworkTypeUnmetered(NETWORK_TYPE_NR);
        boolean nrNsaUnmetered = isNrNsaFrequencyRangeUnmetered();
        boolean nrSaUnmetered = isNrSaFrequencyRangeUnmetered();
        if (nrUnmetered || nrNsaUnmetered || nrSaUnmetered) {
        if ((nrUnmetered || nrNsaUnmetered || nrSaUnmetered)
                && !mPhone.getServiceState().getRoaming() || mRoamingUnmetered) {
            if (DBG) log("NR is unmetered");
            if ((nrUnmetered || nrNsaUnmetered) && mPhone.getServiceState().getNrState()
                    == NetworkRegistrationInfo.NR_STATE_CONNECTED
@@ -4156,7 +4158,7 @@ public class DcTracker extends Handler {
        TelephonyDisplayInfo telephonyDisplayInfo =
                new TelephonyDisplayInfo(dataNetworkType, displayNetworkType);
        if (!telephonyDisplayInfo.equals(mTelephonyDisplayInfo)) {
            log("Display info changed. " + telephonyDisplayInfo);
            log("Display info changed: " + telephonyDisplayInfo);
            mTelephonyDisplayInfo = telephonyDisplayInfo;
            mPhone.notifyDisplayInfoChanged(telephonyDisplayInfo);
            return true;
@@ -5230,6 +5232,8 @@ public class DcTracker extends Handler {
                        CarrierConfigManager.KEY_UNMETERED_NR_SA_MMWAVE_BOOL);
                mNrSaSub6Unmetered = b.getBoolean(
                        CarrierConfigManager.KEY_UNMETERED_NR_SA_SUB6_BOOL);
                mRoamingUnmetered = b.getBoolean(
                        CarrierConfigManager.KEY_UNMETERED_NR_NSA_WHEN_ROAMING_BOOL);
            }
        }

+4 −4
Original line number Diff line number Diff line
@@ -1831,9 +1831,9 @@ public class DcTrackerTest extends TelephonyTest {
        setUpSubscriptionPlans(true);
        setUpWatchdogTimer();

        // Hysteresis active for 10s
        // Hysteresis active for 100s
        doReturn(1).when(mPhone).getSubId();
        mBundle.putInt(CarrierConfigManager.KEY_5G_ICON_DISPLAY_GRACE_PERIOD_SEC_INT, 10000);
        mBundle.putInt(CarrierConfigManager.KEY_5G_ICON_DISPLAY_GRACE_PERIOD_SEC_INT, 100);
        Intent intent = new Intent(CarrierConfigManager.ACTION_CARRIER_CONFIG_CHANGED);
        intent.putExtra(CarrierConfigManager.EXTRA_SLOT_INDEX, mPhone.getPhoneId());
        intent.putExtra(SubscriptionManager.EXTRA_SUBSCRIPTION_INDEX, mPhone.getSubId());
@@ -1901,9 +1901,9 @@ public class DcTrackerTest extends TelephonyTest {
        waitForLastHandlerAction(mDcTrackerTestHandler.getThreadHandler());
        assertFalse(getWatchdogStatus());

        // Hysteresis active for 10s
        // Hysteresis active for 100s
        doReturn(1).when(mPhone).getSubId();
        mBundle.putInt(CarrierConfigManager.KEY_5G_ICON_DISPLAY_GRACE_PERIOD_SEC_INT, 10000);
        mBundle.putInt(CarrierConfigManager.KEY_5G_ICON_DISPLAY_GRACE_PERIOD_SEC_INT, 100);
        Intent intent = new Intent(CarrierConfigManager.ACTION_CARRIER_CONFIG_CHANGED);
        intent.putExtra(CarrierConfigManager.EXTRA_SLOT_INDEX, mPhone.getPhoneId());
        intent.putExtra(SubscriptionManager.EXTRA_SUBSCRIPTION_INDEX, mPhone.getSubId());