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();