我已經廣泛使用了Google,並且某人遇到的情況涉及不同的Xcode版本(因此也包含不同的構建選項)或存在dSYM文件。Xcode存檔中的空dSYM文件夾
所以,這是情況。我通過Xcode收到了一份崩潰報告。這只是內存地址。試圖在項目中打開它給我相同的內存地址。考慮手動符號,但爲此,我需要我的dSYM文件對應於我建立的檔案。但是當我爲查找器中創建的檔案顯示包內容時,它的dSYM文件夾是空的。在歸檔時
我的Xcode設置爲:
DEBUG_INFORMATION_FORMAT: DWARF with dSYM File
STRIP_INSTALLED_PRODUCT: Yes
切換到No
沒什麼區別。
DEPLOYMENT_POSTPROCESSING: No
切換到Yes
沒有區別。
此外,我在上傳檔案到iTunes Connect時選擇了「包含符號」。
Apple的部署過程令人困惑,不必擔心發生崩潰時,resport實際上是可讀的!
所以我的問題是:
1)爲什麼我的檔案缺少的dSYM文件?
2)如果dSYM文件已經生成,它可能在哪裏? 3)如果我真的沒有dSYM文件,我還能以某種方式獲得人類可讀的符號名稱嗎?我已經獲得了我上傳的原始檔案並訪問了該構建的源代碼。如果我的產品>再次歸檔(並且假設這次dSYM確實生成了),我可以使用這個dSYM文件嗎?或者它會有不同的UUID,導致它與崩潰日誌原因不兼容...呃...蘋果?
的Xcode版本:6.4
感謝。
編輯:
我升級到7.3的Xcode嘗試此之前,但它也可能適用於版本6
解決問題(1)是設置在項目生成設置如下:
GCC_GENERATE_DEBUGGING_SYMBOLS
關於您的解決方案(3),你的意思是 '二值圖像' 部分做?這部分在哪裏?我用我的崩潰日誌的屏幕截圖編輯了我的問題。我沒有看到任何這樣的部分。 – Ash
崩潰日誌不會在Xcode崩潰中完全顯示。標準的崩潰日誌將在[這裏](https://developer.apple.com/library/ios/technotes/tn2151/_index.html#top)中解釋。如果要完全符號化崩潰日誌,則可以在「二進制映像」部分列出所有符號文件,並且每個文件都使用「二進制映像」部分中列出的UUID進行標記。現在,如果您已生成代碼的dSYM文件,則可以完全符號化您的崩潰。 – hwris
我在xccrashpoint文件中做了'Show package contents',並通過導航找到3個.crash文件。當我在文本編輯器中打開這些文件時,在「二進制圖像」下,只有非常長的.dylib文件名和文件名列表,以/ System/Library /開頭。我應該怎麼做這些?作爲此過程的一部分,我必須生成一個dSYM文件嗎?你能否詳細說明一下。也許提供分步說明?謝謝。 – Ash