diff options
author | Adam Lesinski <adamlesinski@google.com> | 2016-01-13 12:26:07 -0800 |
---|---|---|
committer | The Android Automerger <android-build@google.com> | 2016-02-24 13:21:11 -0800 |
commit | c583d03388638d0670a0e7e8c749d543a16e19ab (patch) | |
tree | 70c4e4c0c45c4ed0b0b7d0f3e3e58b65bb0b5367 /services/usage/java | |
parent | 040c3dbf982f60cd8431ccab1ba9fcb4cff39ac3 (diff) | |
download | frameworks_base-c583d03388638d0670a0e7e8c749d543a16e19ab.zip frameworks_base-c583d03388638d0670a0e7e8c749d543a16e19ab.tar.gz frameworks_base-c583d03388638d0670a0e7e8c749d543a16e19ab.tar.bz2 |
DO NOT MERGE ANYWHERE: UsageStats: Use new settings key idle_duration2 for app idle
Ignores the old, re-appropriated key "idle_duration" which is now
set to a high value in order to force disable app idle on devices
with bug b/26355386
Bug:26355386
Change-Id: Iff9de843ad6e547d29c1583687fc7f7ce7e15090
Diffstat (limited to 'services/usage/java')
-rw-r--r-- | services/usage/java/com/android/server/usage/UsageStatsService.java | 13 | ||||
-rw-r--r-- | services/usage/java/com/android/server/usage/UserUsageStatsService.java | 7 |
2 files changed, 17 insertions, 3 deletions
diff --git a/services/usage/java/com/android/server/usage/UsageStatsService.java b/services/usage/java/com/android/server/usage/UsageStatsService.java index 4c1db8c..90511f5 100644 --- a/services/usage/java/com/android/server/usage/UsageStatsService.java +++ b/services/usage/java/com/android/server/usage/UsageStatsService.java @@ -280,6 +280,11 @@ public class UsageStatsService extends SystemService implements mHandler.sendEmptyMessageDelayed(MSG_FLUSH_TO_DISK, FLUSH_INTERVAL); } + @Override + public long getAppIdleRollingWindowDurationMillis() { + return mAppIdleWallclockThresholdMillis * 2; + } + private void cleanUpRemovedUsersLocked() { final List<UserInfo> users = mUserManager.getUsers(true); if (users == null || users.size() == 0) { @@ -1107,7 +1112,13 @@ public class UsageStatsService extends SystemService implements * Observe settings changes for {@link Settings.Global#APP_IDLE_CONSTANTS}. */ private class SettingsObserver extends ContentObserver { - private static final String KEY_IDLE_DURATION = "idle_duration"; + /** + * This flag has been used to disable app idle on older builds with bug b/26355386. + */ + @Deprecated + private static final String KEY_IDLE_DURATION_OLD = "idle_duration"; + + private static final String KEY_IDLE_DURATION = "idle_duration2"; private static final String KEY_WALLCLOCK_THRESHOLD = "wallclock_threshold"; private static final String KEY_PAROLE_INTERVAL = "parole_interval"; private static final String KEY_PAROLE_DURATION = "parole_duration"; diff --git a/services/usage/java/com/android/server/usage/UserUsageStatsService.java b/services/usage/java/com/android/server/usage/UserUsageStatsService.java index addb1a1..25cc13c 100644 --- a/services/usage/java/com/android/server/usage/UserUsageStatsService.java +++ b/services/usage/java/com/android/server/usage/UserUsageStatsService.java @@ -68,6 +68,7 @@ class UserUsageStatsService { interface StatsUpdatedListener { void onStatsUpdated(); + long getAppIdleRollingWindowDurationMillis(); } UserUsageStatsService(Context context, int userId, File usageStatsDir, @@ -581,9 +582,11 @@ class UserUsageStatsService { */ void refreshAppIdleRollingWindow(final long currentTimeMillis, final long deviceUsageTime) { // Start the rolling window for AppIdle requests. + final long startRangeMillis = currentTimeMillis - + mListener.getAppIdleRollingWindowDurationMillis(); + List<IntervalStats> stats = mDatabase.queryUsageStats(UsageStatsManager.INTERVAL_DAILY, - currentTimeMillis - (1000 * 60 * 60 * 24 * 2), currentTimeMillis, - new StatCombiner<IntervalStats>() { + startRangeMillis, currentTimeMillis, new StatCombiner<IntervalStats>() { @Override public void combine(IntervalStats stats, boolean mutable, List<IntervalStats> accumulatedResult) { |