iOS獲取崩潰日誌
重要提示: 此文檔不再更新。有關Apple SDK的最新信息,請訪問文檔網站。
來源: https://developer.apple.com/library/archive/qa/qa1747/_index.html
問:如何在沒有Xcode調試器的情況下調試部署的應用程序?
答:一旦部署了應用程序,無論是通過App Store還是作為Ad Hoc或Enterprise構建,您都無法將Xcode的調試器附加到它上面。要調試問題,您需要分析設備的崩潰日誌和控制臺輸出。
Apple Watch崩潰日誌將在配對設備上提供,也可以使用下述方法獲取。
有關編寫富NSLog
語句的更多信息,請參閱Objective-C中的改進日誌記錄
獲取崩潰日誌和控制臺輸出
直接從沒有Xcode的設備獲取崩潰日誌
您的用戶可以通過其設備檢索崩潰報告,並按照這些說明通過電子郵件將其發送給您。
(無法直接從設備獲取設備控制臺日誌)
1)打開設置應用
2)轉到隱私,然後是診斷和使用
3)選擇診斷和使用數據
4)找到崩潰的應用程序的日誌。日誌將以以下格式命名:<AppName> _ <DateTime> _ <DeviceName>
5)選擇所需的日誌。然後,使用文本選擇UI選擇日誌的整個文本。選擇文本後,點按“復制”
6)將復制的文本粘貼到Mail並根據需要發送到電子郵件地址
使用Xcode從設備獲取崩潰日誌和控制臺輸出
即使您無法在Xcode的調試器中運行該應用程序,Xcode仍然可以為您提供調試問題所需的所有信息。
使用Xcode 6
1)插入設備並打開Xcode
2)從菜單欄中選擇Window - > Devices
3)在左列的DEVICES部分下,選擇設備
4)要查看設備控制臺,請單擊右側面板左下角的向上三角形
5)單擊右下角的向下箭頭將控制臺另存為文件
6)要查看崩潰日誌,請選擇右側面板“設備信息”部分下的“查看設備日誌”按鈕
7)在Process列中找到您的應用程序,然後選擇Crash log以查看內容。
8)要保存崩潰日誌,請右鍵單擊左列中的條目,然後選擇“導出日誌”
9)Xcode 6還將列出低內存日誌。
使用Xcode 5
1)插入設備並打開Xcode
2)打開“管理器”窗口,然後選擇“設備”選項卡
3)在左列的DEVICES部分下,展開設備的列表
4)選擇設備日誌以查看崩潰日誌,或選擇控制臺以查看控制臺輸出
回到頂部啟用App Store診斷報告
從選擇向Apple發送診斷和使用信息的客戶自動收集崩潰日誌。
從Xcode 6.3開始,可以在Xcode Organizer中找到至少運行iOS 8.3和TestFlight beta測試人員的App Store客戶的崩潰日誌。要獲取這些崩潰日誌:
1)在Xcode 6.3及更高版本中打開管理器窗口
2)選擇頂部的“崩潰”。然後可以在此窗口中找到可用的崩潰日誌。
“ 應用程序分發指南”包含有關崩潰報告服務的更多信息。
可以在iTunes Connect中找到運行較舊iOS版本的客戶的崩潰報告。
如果有人報告崩潰,並且您在iTunes Connect中沒有看到相應的報告,則應將其引導至以下適用於Mac或Windows的知識庫文章,以便他們可以選擇向您發送崩潰報告。
回到頂部了解崩潰日誌和控制臺輸出
理解崩潰日誌的第一步也是最重要的一步是對它們進行符號化。符號化用人類可讀的函數名稱和行號替換內存地址。
如果您通過Xcode的設備窗口從設備上獲取崩潰日誌,那麽幾秒後它們將自動為您設置符號。否則,您需要通過將.crash文件導入Xcode來自己進行符號化。打開Xcode Devices窗口,選擇有問題的設備,將崩潰文件拖到左側列,按住Control鍵並單擊剛剛添加的文件,然後從菜單中選擇“Re-Symbolicate Log”。
有關解釋崩潰日誌的更多信息,請參閱了解和分析iOS應用程序崩潰報告技術說明以及了解iPhone OS WWDC 2010會話上的崩潰報告。
回到頂部
文檔修訂歷史
日期 | 筆記 |
---|---|
二零一五年七月三十零日 |
添加了Apple Watch崩潰日誌的註釋,以及如何從Xcode獲取App Store和TestFlight崩潰日誌的說明。 |
2015年5月14日 |
添加了直接從設備獲取崩潰日誌而不使用Xcode的方法 |
2015年1月8日 |
更新的鏈接和刪除的部分不再相關。 |
情節中字 |
使用Xcode 6獲取設備控制臺和日誌的更新說明 |
2012-03-28 |
添加了有關低內存日誌的說明。 |
2011-11-09 |
新文檔,描述如何通過App Store或Ad Hoc構建調試已部署的應用程序 |
iOS獲取崩潰日誌