[英]Symbolicate crash in iOS8 with Xcode 6 .1
我曾經在Xcode 5.1.1中直接表示崩潰報告,因為Organizer的Devices部分中有“Symbolicate&Re-symbolicate”。 但升級到Xcode 6.1后,我既沒有找到symbolicate也沒有resymbolicate選項來查看崩潰日志。 我糊塗了。 怎么做?
以前我曾經將設備與iTunes同步,並從~/Library/Logs/CrashReporter/MobileDevice
查看崩潰。 單擊任何崩潰將打開設備(Xcode),然后符號化。 但現在,它打開了Console,沒有符號選項。 Xcode 6.1有這樣的選擇嗎?
在Xcode 6中手動符號化崩潰日志的步驟
如果在發布之前歸檔了發布版本,則轉到步驟2.否則歸檔最終發布版本(不進行任何代碼更改)。
要找到您的存檔文件,請打開管理器 - >選擇您的項目 - >選擇最新的存檔文件 - >右鍵單擊它 - >選擇'show in finder'
右鍵單擊'* .xcarchive'文件並選擇'show package content'選項然后轉到Products文件夾 - > Applications Folder - > YourAppName.app (.app擴展名隱藏在某些機器中)
將.app文件復制並粘貼到其他位置。 將崩潰日志文件也放在同一文件夾中。 打開終端應用程序並通過'cd'命令轉到您粘貼的文件夾
並在終端中使用崩潰地址鍵入以下命令
xcrun atos -o YourAppName.app/YourAppName -arch armv7 -l 0xbd000 0x0013f745
注意:如果上述命令不起作用,則將“armv7”更改為“armv7s”並進行檢查。
例如:崩潰日志看起來像這樣,你需要獲取崩潰地址並將其放在上面的命令中
3 CoreGraphics 0x266814d3 CGPathAddLineToPoint + 171
4 YourAppName 0x00140a8b 0xbd000 + 539275
5 YourAppName 0x0013f745 0xbd000 + 534341
6 Foundation 0x27152d6b __NSThreadPerformPerform + 383
7 CoreFoundation 0x2640a375
在“產品”菜單下,Xcode可以使用插件。 這個插件可以通過Alcatraz包管理器獲得 ,也可以直接從github下載。
此插件內部包含一個shell腳本,該腳本執行以下命令的設置,以執行手動崩潰符號化。
alias symbolicatecrash ='/ Applications / Xcode.app / Contents / Developer / Platforms / iPhoneOS.platform / Developer / Library / PrivateFrameworks / DTDeviceKit.framework / Versions / A / Resources / symbolicatecrash'
find /Applications/Xcode.app -name symbolicatecrash -type f
export DEVELOPER_DIR ='/ Applications / Xcode.app / Contents / Developer'
symbolicatecrash /path/to/MyApp_2012-10-01_Device.crash /path/to/MyApp.app.dSYM。
只需連接iOS設備,打開設備>設備>查看設備日志,然后將崩潰拖放到該設備的崩潰文件列表中。 崩潰將被添加到列表中,只要原始存檔存在,它就會被符號化。
連接iOS設備,打開設備(shift命令2),選擇設備並單擊“查看設備日志”。 在左側欄中,將顯示崩潰日志。 選擇您感興趣的那個。
只要您在崩潰時歸檔了在設備上運行的構建,就會在幾秒鍾后自動對崩潰日志進行符號化。 如果沒有,請右鍵單擊崩潰日志並選擇“重新符號化日志”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.