From 8958d5d0bc9275d9d201a109a7ee95153dac54be Mon Sep 17 00:00:00 2001 From: Varun Shah Date: Wed, 20 Nov 2019 17:08:16 -0800 Subject: [PATCH] Remove UserUsageStatsService#userUnlocked. UsageStatsDatabase#init was being called twice every time - once when the usage stats service was initialized and once when the user was unlocked. However, this was unnecessary and doing duplicate work since on user unlock, when the service is initialized, the database is also initialized. Bug: n/a Test: atest UsageStatsTest Change-Id: Ic74ba3ff8a0b68c97340ffe25b19065e1a046731 --- .../java/com/android/server/usage/UsageStatsService.java | 4 ++-- .../java/com/android/server/usage/UserUsageStatsService.java | 4 ---- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/services/usage/java/com/android/server/usage/UsageStatsService.java b/services/usage/java/com/android/server/usage/UsageStatsService.java index f9b365906c5b6..63b062e91c986 100644 --- a/services/usage/java/com/android/server/usage/UsageStatsService.java +++ b/services/usage/java/com/android/server/usage/UsageStatsService.java @@ -347,7 +347,7 @@ public class UsageStatsService extends SystemService implements Slog.i(TAG, "Attempted to unlock stopped or removed user " + userId); return; } - userService.userUnlocked(System.currentTimeMillis()); + // Process all the pending reported events while (pendingEvents.peek() != null) { reportEvent(pendingEvents.poll(), userId); @@ -466,6 +466,7 @@ public class UsageStatsService extends SystemService implements if (mUserUnlockedStates.get(userId)) { try { service.init(currentTimeMillis); + mUserState.put(userId, service); } catch (Exception e) { if (mUserManager.isUserUnlocked(userId)) { throw e; // rethrow exception - user is unlocked @@ -476,7 +477,6 @@ public class UsageStatsService extends SystemService implements } } } - mUserState.put(userId, service); } return service; } diff --git a/services/usage/java/com/android/server/usage/UserUsageStatsService.java b/services/usage/java/com/android/server/usage/UserUsageStatsService.java index 5783932db4889..c6a5fcfa8d2cc 100644 --- a/services/usage/java/com/android/server/usage/UserUsageStatsService.java +++ b/services/usage/java/com/android/server/usage/UserUsageStatsService.java @@ -165,10 +165,6 @@ class UserUsageStatsService { } } - void userUnlocked(long currentTimeMillis) { - init(currentTimeMillis); - } - void userStopped() { // Flush events to disk immediately to guarantee persistence. persistActiveStats();