獲取App冷啓動所耗時長

在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加載時間、廣告頁加載時間、首頁加載時間等等。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章