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

Commit 9aaa228c authored by Jeevaka Badrappan's avatar Jeevaka Badrappan
Browse files

Telephony: Start DataStallAlarm only on Data CONNECTED state



Telephony framework uses AlarmManager for recovery mechanism of data
stalled issue.
Framework configures the ELAPSED_REALTIME_WAKEUP alarm for every
6minutes irrespective of the data state. Due to this,quiet a few
wakeups are seen even when the device is not connected to Mobile
Data network.

Fix is to check the Data connection state before starting
this alarm.

Change-Id: I219bff9199e5ce70bbcd05c95d65731886215fe9
Author: Jeevaka Badrappan <jeevaka.badrappan@intel.com>
Signed-off-by: default avatarJeevaka Badrappan <jeevaka.badrappan@intel.com>
Signed-off-by: default avatarArun Ravindran <arun.ravindran@intel.com>
Signed-off-by: default avatarShuo Gao <shuo.gao@intel.com>
Signed-off-by: default avatarBruce Beare <bruce.j.beare@intel.com>
Signed-off-by: default avatarJack Ren <jack.ren@intel.com>
Author-tracking-BZ: 28494
parent 08159700
Loading
Loading
Loading
Loading
+26 −24
Original line number Diff line number Diff line
@@ -1374,6 +1374,7 @@ public abstract class DataConnectionTracker extends Handler {
        int nextAction = getRecoveryAction();
        int delayInMs;

        if (getOverallState() == DctConstants.State.CONNECTED) {
            // If screen is on or data stall is currently suspected, set the alarm
            // with an aggresive timeout.
            if (mIsScreenOn || suspectedStall || RecoveryAction.isAggressiveRecovery(nextAction)) {
@@ -1401,6 +1402,7 @@ public abstract class DataConnectionTracker extends Handler {
            am.set(AlarmManager.ELAPSED_REALTIME_WAKEUP,
                    SystemClock.elapsedRealtime() + delayInMs, mDataStallAlarmIntent);
        }
    }

    protected void stopDataStallAlarm() {
        AlarmManager am =