Preload expensive objects before user is unlocked.

This change includes migrating data required for starting the launcher
from encrypted storage into device protected storage. All of the data
being moved has already been approved by the correct authorities.

Bug: 251502424
Test: Performed latency testing using logs from user unlock until first
workspace screen loaded.

Change-Id: I58b0cd1c7bad260c2252f9e172ef85ab885c7fe9
This commit is contained in:
Stefan Andonian
2023-02-23 00:58:33 +00:00
parent a8b120bc7e
commit 5bd9a225a8
8 changed files with 425 additions and 103 deletions

View File

@@ -410,6 +410,7 @@ public class TouchInteractionService extends Service
mDeviceState = new RecentsAnimationDeviceState(this, true);
mTaskbarManager = new TaskbarManager(this);
mRotationTouchHelper = mDeviceState.getRotationTouchHelper();
BootAwarePreloader.start(this);
// Call runOnUserUnlocked() before any other callbacks to ensure everything is initialized.
mDeviceState.runOnUserUnlocked(this::onUserUnlocked);