60 динамических фреймворков из CocoaPods — холодный запуск больше двух секунд
Шаблон App Launch в Instruments показывает: заметная часть холодного запуска проходит до вызова main — в загрузке и связывании библиотек. В Podfile стоит use_frameworks!, приложение подключает 60 подов, каждый собирается как динамический фреймворк. Код в didFinishLaunching уже оптимизирован.
Что даст наибольший эффект?
- Статическая линковка подов вместо динамической
- Перенести инициализацию в viewDidLoad
- Включить оптимизацию -Osize для всех подов
- Разбить AppDelegate на несколько классов
