
11/13/2013 · David Garcia
What this post added
This post details the technical efforts to significantly improve the startup time and overall performance of the Messenger app on both iOS and Android. On iOS, a custom wall-clock tracing utility (FBTracer) was developed to identify and eliminate non-essential startup processes. On Android, bytecode manipulation using ASM was employed to optimize the dependency injection framework, achieving a 30% speed gain. Further performance enhancements included view controller reuse and backgrounding sound playback on iOS, and optimizing the contact schema and queries on Android. Automated diff testing for startup timing was implemented to catch regressions.