diff options
| author | 2021-04-09 14:46:43 -0700 | |
|---|---|---|
| committer | 2021-04-09 14:46:43 -0700 | |
| commit | 911ef5217963786b86707f5d1a026eb2ff6af76d (patch) | |
| tree | dab60bccd99e327e582193e4d9192825ce0ca88f | |
| parent | 44b4d7780883e49c49c72cfbe69878e4d6273d0f (diff) | |
Use elapsed-time in AppTimeLimitController.
Bug: 181983817
Test: atest AppTimeLimitControllerTests
Change-Id: Ia0f20475ebd54039a1a4fd3206d730a8d5649765
| -rw-r--r-- | services/tests/servicestests/src/com/android/server/usage/AppTimeLimitControllerTests.java | 8 | ||||
| -rw-r--r-- | services/usage/java/com/android/server/usage/AppTimeLimitController.java | 19 |
2 files changed, 13 insertions, 14 deletions
diff --git a/services/tests/servicestests/src/com/android/server/usage/AppTimeLimitControllerTests.java b/services/tests/servicestests/src/com/android/server/usage/AppTimeLimitControllerTests.java index 958b23ff773f..7d8696139245 100644 --- a/services/tests/servicestests/src/com/android/server/usage/AppTimeLimitControllerTests.java +++ b/services/tests/servicestests/src/com/android/server/usage/AppTimeLimitControllerTests.java @@ -91,7 +91,7 @@ public class AppTimeLimitControllerTests { private HandlerThread mThread; - private long mUptimeMillis; + private long mElapsedTime; AppTimeLimitController.TimeLimitCallbackListener mListener = new AppTimeLimitController.TimeLimitCallbackListener() { @@ -116,8 +116,8 @@ public class AppTimeLimitControllerTests { } @Override - protected long getUptimeMillis() { - return mUptimeMillis; + protected long getElapsedRealtime() { + return mElapsedTime; } @Override @@ -1108,6 +1108,6 @@ public class AppTimeLimitControllerTests { } private void setTime(long time) { - mUptimeMillis = time; + mElapsedTime = time; } } diff --git a/services/usage/java/com/android/server/usage/AppTimeLimitController.java b/services/usage/java/com/android/server/usage/AppTimeLimitController.java index 4986d1883307..1dc1e7776b01 100644 --- a/services/usage/java/com/android/server/usage/AppTimeLimitController.java +++ b/services/usage/java/com/android/server/usage/AppTimeLimitController.java @@ -536,14 +536,13 @@ public class AppTimeLimitController { long getUsageRemaining() { // If there is currently an active session, account for its usage if (mActives > 0) { - return mTimeLimitMs - mUsageTimeMs - (getUptimeMillis() - mLastKnownUsageTimeMs); + return mTimeLimitMs - mUsageTimeMs - (getElapsedRealtime() - mLastKnownUsageTimeMs); } else { return mTimeLimitMs - mUsageTimeMs; } } } - private class MyHandler extends Handler { static final int MSG_CHECK_TIMEOUT = 1; static final int MSG_INFORM_LIMIT_REACHED_LISTENER = 2; @@ -558,7 +557,7 @@ public class AppTimeLimitController { switch (msg.what) { case MSG_CHECK_TIMEOUT: synchronized (mLock) { - ((UsageGroup) msg.obj).checkTimeout(getUptimeMillis()); + ((UsageGroup) msg.obj).checkTimeout(getElapsedRealtime()); } break; case MSG_INFORM_LIMIT_REACHED_LISTENER: @@ -585,8 +584,8 @@ public class AppTimeLimitController { /** Overrideable by a test */ @VisibleForTesting - protected long getUptimeMillis() { - return SystemClock.uptimeMillis(); + protected long getElapsedRealtime() { + return SystemClock.elapsedRealtime(); } /** Overrideable for testing purposes */ @@ -760,7 +759,7 @@ public class AppTimeLimitController { } user.addUsageGroup(group); - noteActiveLocked(user, group, getUptimeMillis()); + noteActiveLocked(user, group, getElapsedRealtime()); } } @@ -813,7 +812,7 @@ public class AppTimeLimitController { observerApp.sessionUsageGroups.append(observerId, group); user.addUsageGroup(group); - noteActiveLocked(user, group, getUptimeMillis()); + noteActiveLocked(user, group, getElapsedRealtime()); } } @@ -869,7 +868,7 @@ public class AppTimeLimitController { } user.addUsageGroup(group); - noteActiveLocked(user, group, getUptimeMillis()); + noteActiveLocked(user, group, getElapsedRealtime()); } } @@ -914,7 +913,7 @@ public class AppTimeLimitController { return; } } - final long currentTime = getUptimeMillis(); + final long currentTime = getElapsedRealtime(); user.currentlyActive.put(name, ONE); @@ -964,7 +963,7 @@ public class AppTimeLimitController { } user.currentlyActive.removeAt(index); - final long currentTime = getUptimeMillis(); + final long currentTime = getElapsedRealtime(); // Check if any of the groups need to watch for this entity ArrayList<UsageGroup> groups = user.observedMap.get(name); |