iOS App Launch Performance Articles
- SpringBoard Stage
- pre-main Stage
- main Stage
- Tools
- Hot Launch
- Resource Collection
- Handbook
- Can Explore
- Summary
Over past two plus years, I wrote some iOS app launch performance optimization articles, this article organizes a simple directory.
SpringBoard Stage
This stage is iOS system’s SpringBoard launching App stage, App’s own process hasn’t started yet.
pre-main Stage
App’s own process, stage before main function.
- A Method to Hook Objective C +load
- A Method to Hook C++ Static Initializers
- A Method to Delay premain Code
- iOS App Launch Performance Optimization (1) - premain
- Hook All +load Methods (Including Category)
main Stage
main function to didFinishLaunching, to home page display completion stage.
- iOS Time Retrieval Methods
- A Simple C++ Thread Pool Implementation
- A Glance at mmap
- FastImageCache Principles
- Simple LRU Cache (LRUCache) in MMKV
- Thread Identifier Retrieval Methods
- Simplest Startup Task Classification
Tools
Tools good, analyzing becomes pleasant.
- AppleTrace Performance Analysis Tool
- AppleTrace with MonkeyDev Trace Any App
- VSCode Extension Filter Line
- os_signpost API First Look
- Instruments (TimeProfiler) always wanted to write article, but didn’t. Online many, won’t write.
- dtrace always wanted to write article, but didn’t. Can reference this book Advanced Apple Debugging & Reverse Engineering
Hot Launch
This article 90% content I wrote on Alibaba internal network two years ago, after I left Ant, mPaaS project colleagues organized and published (although no my signature😓). Among them most valuable is Background Fetch section. But this section is just tip of iceberg, or first step of long march. If want to learn more, welcome to join Meituan.
Resource Collection
Handbook
Can Explore
- Profile-Guided Optimization (PGO)
- Improving Locality of Reference
These two points just mention names, if want to execute, very interesting, can search yourself.
Summary
Recently over a month many miscellaneous things, didn’t write articles, this article makes a directory, make up numbers. Also categorizes past scattered articles.
iOS app’s launch optimization ideas, this article at least covers most. Of course many articles above are relatively simple, some optimization directions just started, in-depth research left to readers. Business governance and technical breakthroughs need both hands, also need to simultaneously build various automated analysis and monitoring platforms, steady stream, sustainable development, green earth (went too far ha)…
Future I probably won’t like before “so focus on App’s launch optimization”, “launch optimization” although contains lots of content, but still too narrow. Directions can explore still many many, let’s do it… formally… set sail~
Welcome to follow subscription account “Client Technology Review”:
