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

Commit 70e86662 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Don't report data stall for disconnected DataNetwork" into tm-dev

parents 0c3f00a7 c5b3a1e2
Loading
Loading
Loading
Loading
+11 −1
Original line number Diff line number Diff line
@@ -2587,8 +2587,18 @@ public class DataNetworkController extends Handler {
            return;
        }

        // TODO: Add DataConfigManager.isRecoveryOnBadNetworkEnabled()
        if (!mDataSettingsManager.isRecoveryOnBadNetworkEnabled()) {
            log("Ignore data network validation status changed becaused"
                    + "data stall recovery is disabled.");
            return;
        }

        if (dataNetwork.isInternetSupported()) {
            if (status == NetworkAgent.VALIDATION_STATUS_NOT_VALID
                    && (dataNetwork.getCurrentState() == null || dataNetwork.isDisconnected())) {
                log("Ignoring invalid validation status for disconnected DataNetwork");
                return;
            }
            mDataNetworkControllerCallbacks.forEach(callback -> callback.invokeFromExecutor(
                    () -> callback.onInternetDataNetworkValidationStatusChanged(status)));
        }
+11 −0
Original line number Diff line number Diff line
@@ -564,6 +564,15 @@ public class DataSettingsManager extends Handler {
        return mDataEnabledOverride.isDataAllowedInVoiceCall();
    }

    /**
     * Check whether data stall recovery on bad network is enabled.
     * @return {@code true} if data stall recovery is enabled and {@code false} otherwise.
     */
    public boolean isRecoveryOnBadNetworkEnabled() {
        return Settings.Global.getInt(mResolver,
                Settings.Global.DATA_STALL_RECOVERY_ON_BAD_NETWORK, 1) == 1;
    }

    private void notifyDataEnabledChanged(boolean enabled,
            @TelephonyManager.DataEnabledChangedReason int reason) {
        logl("notifyDataEnabledChanged: enabled=" + enabled + ", reason="
@@ -669,6 +678,8 @@ public class DataSettingsManager extends Handler {
        pw.println("device_provisioned=" + Settings.Global.getInt(
                mResolver, Settings.Global.DEVICE_PROVISIONED, 0));
        pw.println("isProvisioningDataEnabled=" + isProvisioningDataEnabled());
        pw.println("data_stall_recovery_on_bad_network=" + Settings.Global.getInt(
                mResolver, Settings.Global.DATA_STALL_RECOVERY_ON_BAD_NETWORK, 1));
        pw.println("mDataEnabledSettings=" + mDataEnabledSettings.entrySet().stream()
                .map(entry ->
                        dataEnabledChangedReasonToString(entry.getKey()) + "=" + entry.getValue())