Launch Screens: From a Tap to Your App
summary
Shows concrete changes and measurements: uses adb shell screenrecord with timestamps, reportFullyDrawn and activity manager logs to compare displayed-vs‑content times, forces cold starts via ADB stop and developer background process limit, and profiles boot with systrace. Explains window manager’s addStartingWindow, the distinction between system preview and app window, and a runtime-theme trick that replaces the preview theme to match app UI. Demonstrates lazy initialization to shave cold-start milliseconds and reports that the approach reliably reduces perceived launch time.
AI-written summary · about
chapters (13)
- 0:00Launch screens
- 2:29launching experience
- 3:55Branded launch
- 8:04Timeline of a launch
- 16:08Same look, different process and that explains a lot
- 26:00Force cold launch
- 26:53Lazy-load & async
- 27:25In general beware of static init & onCreate
- 33:26smoke mirrors
- 33:50Switch between compile time & runtime themes
- 40:02Don't forget every screen is an entry point
- 40:55Consider launch screen as boring screen
- 41:41Android Makers
related talks
36mWin on startup time! Improving app launch performance
37mPerformance Monitoring- 0 to 60 in 40 Minutes
24mHow to Improve App Startup Time
20mMajor Savings with App Startup Shaving
39mAndroid App Performance in a Nutshell
40mMy Journey: Adding Baseline Profiles to a Production-Based Android App: Success or Failure?
41mModern App Performance
24mMake the Most of Android Vitals
