获取App冷启动所耗时长

2019-05-09  本文已影响0人  这个汤圆没有馅
在App性能优化中,有一块就是启动时间的优化。那如何获取App冷启动所需要的时间呢?
找到 Edit scheme -> Run -> Auguments 将环境变量 DYLD_PRINT_STATISTICS 设为 1,如下图,然后运行。
运行后,能看到控制台打印出日志。
Total pre-main time: 396.73 milliseconds (100.0%)
         dylib loading time: 147.70 milliseconds (37.2%)
        rebase/binding time:  43.57 milliseconds (10.9%)
            ObjC setup time:  57.86 milliseconds (14.5%)
           initializer time: 147.45 milliseconds (37.1%)
           slowest intializers :
             libSystem.B.dylib :   9.33 milliseconds (2.3%)
    libMainThreadChecker.dylib :  34.97 milliseconds (8.8%)
  libViewDebuggerSupport.dylib :   9.96 milliseconds (2.5%)
                  AFNetworking :  53.18 milliseconds (13.4%)
                   ProjectName :  53.38 milliseconds (13.4%)
可以看到在进入main()函数之前,一共耗时396.73ms。并且列举了加载比较慢的文件。
DYLD_PRINT_STATISTICS改成DYLD_PRINT_STATISTICS_DETAILS后运行,能打印出更加详细的日志,如下图。
另外推荐一个代码耗时打点计时器,可以记录SDK加载时间、广告页加载时间、首页加载时间等等。
上一篇下一篇

猜你喜欢

热点阅读