作家
登录

iOS如何进行优化项目?

作者: 来源: 2017-07-31 08:31:53 阅读 我要评论

  •   
  •         // UI刷新,动画显示 
  •         else 
  •             __CFRunLoopDoSource1(); 
  •   
  •         // 再次确保是否有同步的办法须要调用 
  •         __CFRunLoopDoBlocks(); 
  •   
  •     } while (!stop && !timeout); 
  •   
  •     //通知即将退出runloop 
  •     __CFRunLoopDoObservers(CFRunLoopExit); 
  • 我们可以看到在kCFRunLoopBeforeSources和kCFRunLoopBeforeWaiting等待时光过长即可剖断为卡顿,具体怎么算作卡顿,我们都知道FPS为一秒60帧阁下最好,FPS即为Frames Per Second,严格意义上一秒60帧算流畅,也就是一帧须要1s/60 = 16.6ms,推敲会有其他的一些事宜影响,可以用持续几回50ms或者单次耗时过长剖断为卡顿。剖断为卡顿之后,我们可以应用PLCrashReporter或者KSCrash生成日记记录,可以存储到本地

    我们可以应用CFRunLoopObserverRef来及时获取NSRunLoop状况值的变更,一下为一个样例:

    安闲崩溃,上传崩溃日记

    经由过程应用NSSetUncaughtExceptionHandler注册本身的异常处理回调,产生崩溃时让法度榜样显示的安闲一点,不会直接闪退,可以弹出本身的崩溃异常界面,可以参考Bilibili的界面,比如说前方碰到高能反竽暌功之类,法度榜样须要重启之类的,不会让用户感到到很突兀得闪退了,也可以在收到崩溃日记背工动保护Runloop,下面是一个样例:

    1. // 1. 注册ExceptionHandler 
    2.   
    3. + (void)installUncaughtExceptionHandler { 
    4.     NSSetUncaughtExceptionHandler(&HandleException); 
    5.   
    6.     signal(SIGHUP, SignalHandler); 
    7.     signal(SIGINT, SignalHandler); 
    8.     signal(SIGQUIT, SignalHandler); 
    9.   
    10.     signal(SIGABRT, SignalHandler); 
    11.     signal(SIGILL, SignalHandler); 
    12.     signal(SIGSEGV, SignalHandler); 
    13.     signal(SIGFPE, SignalHandler); 
    14.     signal(SIGBUS, SignalHandler); 
    15.     signal(SIGPIPE, SignalHandler); 
    16.   
    17. // 2. 处理崩溃信息 
    18. void SignalHandler(int signal) { 
    19.     // 1. 获取调用栈 
    20.     // 2. 处理异常 
    21.   
    22.     // 3. App保活 
    23.     BOOL isContiune = TRUE; // 是否要保活 
    24.     CFRunLoopRef runLoop = CFRunLoopGetCurrent(); 
    25.     CFArrayRef allModes = CFRunLoopCopyAllModes(runLoop); 
    26.   
    27.     while (isContiune) { 
    28.         for (NSString *mode in (__bridge NSArray *)allModes) { 

        推荐阅读

        从交通三元素看高德易行新平台

      “高德易行平台的上线,标记住高德地图在交通出行计谋进级上迈出了重要一步。其实交通在我看来竽暌剐三元素,就是人、车和路,它们构成了交通核心的关键词。将来高德将以易行平台与交>>>详细阅读


      本文标题:iOS如何进行优化项目?

      地址:http://www.17bianji.com/lsqh/36461.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)