How we reduced startup time of Turo Android app
summary
Turo cuts app cold-start by 77% improvement by removing a 1s splash animation, replacing a separate splash activity with a single home activity using installSplashScreen API, and showing a home skeleton while feature‑flag fetches run in background (suspend until available). Startup diagnostics use StrictMode disk read detection. Other fixes: lazy-init SharedPreferences (separate small files), defer SDK inits, add baseline profiles and experiment with DEX layout startup profiles.
AI-written summary · about
chapters (9)
- 0:00Introduction and background
- 3:00Baseline startup process analysis
- 4:23Splash screen optimization
- 10:41Network requests optimization
- 16:45Disk I/O impact on startup
- 21:15Shared preferences and UI thread
- 29:20Baseline profiles for startup
- 33:14Third-party SDKs and lifecycle
- 35:39Final thoughts and takeaways
related talks
18mHow we improved our app startup time by 50%
20mMajor Savings with App Startup Shaving
36mWin on startup time! Improving app launch performance
24mHow to Improve App Startup Time
39mAndroid App Performance in a Nutshell
30mLearn from developers: Lyft and Google Maps share their experiences optimizing app performance
41mModern App Performance
31mBuild apps for the next billion users
