美文网首页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