<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-193  評論-715  文章-1  trackbacks-0

     

    原文地址:http://www.acwind.net/blog/?p=1090

    Bug是永遠伴隨著程序員們的東西,各種各樣的情況造成程序crash掉也是家常便飯。Windows下的很多大型軟件在崩潰的時候,都會彈出提示框,詢問用戶是否將crash的信息發送到軟件廠商,以供軟件開發商debug。App store中的軟件也有這個功能,用戶在使用軟件的時候,如果程序崩潰,錯誤信息會發送到Apple的服務器中,軟件的開發者們可以很方便在后臺獲得自己程序的crash log,供自己調試。

    但隨之而來的問題是,我們收到的程序崩潰調試信息多半是匯編語言一樣的堆棧代碼,同時這些信息并不是在我們debug的時候產生,所以看到這一串crash log的天書,常常無可奈何。Xcode很好的解決了這一問題,它所提供的Orgainzer分析器加上symbolicatecrash?,可以分析二進制文件以及源代碼和crashlog之間的連接,直接找出源程序中出錯的代碼行。方法網上到處是,本文不討論。

    但是如果使用symbolicatecrash?無法定位到出錯的代碼行的話,怎么整呢?有一個辦法,如下:

    首先查看crash log中的崩潰線程,假如是這樣的:

    Thread 0 Crashed:
    0   libobjc.A.dylib                0x00003ec0 objc_msgSend + 24
    1   MyApp               0x000036d2 0×1000 + 9938?

    我們得到了用戶發生崩潰情況的內存地址:0x000036d2?

    然后回到我們應用程序的build目錄,目錄下一定要包含MyApp.app 和MyApp.app.dSYM兩個文件。

    在控制臺使用dwarfdump命令,解析出內存地址,如: 

    dwarfdump –lookup 0x000036d2 –arch armv6 MyApp.app.dSYM

    輸出信息如下:

    dwarfdump.jpg

    直接定位到代碼的出錯行,Cool!

    posted on 2011-12-28 12:24 Robin's Programming World 閱讀(1059) 評論(0)  編輯  收藏 所屬分類: 其它
    主站蜘蛛池模板: 免费一级全黄少妇性色生活片 | 亚洲国产精品成人一区| 在线aⅴ亚洲中文字幕| 香蕉97超级碰碰碰免费公| 亚洲成电影在线观看青青| 国产精品1024永久免费视频 | 亚洲精品成a人在线观看夫| 最近2019中文免费字幕| 亚洲日韩av无码中文| 精品无码国产污污污免费| 国产精品亚洲专区一区| 亚洲国产成人久久笫一页| 成av免费大片黄在线观看| 久久亚洲精品中文字幕无码| 18女人腿打开无遮掩免费| 亚洲人成77777在线播放网站不卡| 女人18毛片水真多免费看| 国产成人亚洲精品电影| 亚洲中文字幕无码永久在线| 久久成人a毛片免费观看网站| 亚洲黄色三级视频| 免费爱爱的视频太爽了 | 最新黄色免费网站| 亚洲s码欧洲m码吹潮| 中文字幕亚洲图片| 69xx免费观看视频| 免费毛片毛片网址| 亚洲免费在线视频| 成人奭片免费观看| www一区二区www免费| 亚洲大尺码专区影院| 亚洲?V乱码久久精品蜜桃| 欧洲人免费视频网站在线| 国产亚洲精aa在线看| 亚洲伊人色欲综合网| 成人黄动漫画免费网站视频 | 免费国产美女爽到喷出水来视频| a毛片免费在线观看| 亚洲午夜成人精品无码色欲| 国产亚洲色婷婷久久99精品91| 最近中文字幕国语免费完整 |