简单的app启动优化:
思路:
优化启动时间的时候,把app分为三部分。让用户能快速的看到页面。这样给用户的感觉就很快。
第一部分:必须写在didFinishLaunchingWithOptions中
(在此方法中给一些不是特别重要的部分,放在子线程中去执行。)
第二部分:app在加载广告图的时机。做一些处理操作。
第三部分:app进入到主页的时机。
为了日后app不停的扩展,我们不妨把启动事情放在一个单独的工具类DelayStartupTool
中。
为了让tool看起来清晰,不妨再给它写个分类,调用的方法写在分类中。Demo下载链接
核心方法如下:
/**
* 启动伴随 didFinishLaunchingWithOptions 启动的事件.
* 启动类型为:日志 / 统计等需要第一时间启动的.
*/
+ (void)startupEventsOnAppDidFinishLaunchingWithOptions;
/**
* 启动可以在展示广告的时候初始化的事件.
* 启动类型为: 用户数据需要在广告显示完成以后使用, 所以需要伴随广告页启动.
*/
+ (void)startupEventsOnADTime;
/**
* 启动在第一个界面显示完(用户已经进入主界面)以后可以加载的事件.
* 启动类型为: 比如直播和分享等业务, 肯定是用户能看到真正的主界面以后才需要启动, 所以推迟到主界面加载完成以后启动.
*/
+ (void)startupEventsOnDidAppearAppContent;
下面是一些分析程序启动过程的、
iOS程序启动->dyld加载->runtime初始化(初识)
1.Mach-O 可执行文件
未完待续~~~~