美文网首页iOS App 优化系列
iOS启动时间的优化

iOS启动时间的优化

作者: Rumbles | 来源:发表于2018-12-14 10:10 被阅读48次

主要分为两个阶段

  1. pre-main阶段的定义为APP开始启动到系统调用main函数这一段时间;
  2. main之后 从main函数入口到主UI框架的viewDidAppear函数调用的这一段时间

1.pre-main的优化看下面的文章就够了

时间测试
1.Edit scheme -> Run -> Arguments 中将环境变量 DYLD_PRINT_STATISTICS 设为 1,就可以看到 main 之前各个阶段的时间消耗。
2.还有一个方法获取更详细的时间,只需将环境变量 DYLD_PRINT_STATISTICS_DETAILS 设为 1 就可以。

2.main之后的优化主要是使用多线程和将不需要的延缓初始化【比如投屏】

时间测试代码
CFAbsoluteTime StartTime;
int main(int argc, char * argv[]) {
StartTime = CFAbsoluteTimeGetCurrent();
然后在 AppDelegate.m 的开头声明

extern CFAbsoluteTime StartTime; 
最后在AppDelegate.m 的 didFinishLaunchingWithOptions 中添加

dispatch_async(dispatch_get_main_queue(), ^{
    NSLog(@"App启动时间--%f",(CFAbsoluteTimeGetCurrent()-StartTime));
});

如何精确度量 iOS App 的启动时间
iOS启动时间优化

相关文章

网友评论

    本文标题:iOS启动时间的优化

    本文链接:https://www.haomeiwen.com/subject/osorhqtx.html