分析崩潰報告
在您通過使用TestFlight分發應用程序以進行測試之后,或者在應用商店上提供該應用程序之后,您可以定期下載并分析崩潰報告。當應用程序崩潰時,系統創建一個崩潰日志,描述應用程序終止的條件,在大多數情況下,包括每個執行線程的完整堆棧跟蹤。Apple提供了一個崩潰報告服務,用于收集和聚合用戶崩潰日志。崩潰報告可用于應用,WatchKit擴展程序和其他附加應用信息。
或者,直接在設備上查看崩潰日志或導入崩潰報告,如在設備窗口中查看和導入崩潰中所述。例如,如果您在應用商店之外發布應用,您可以直接從用戶處索取崩潰報告并將其導入Xcode。
關于崩潰報告服務
蘋果提供的服務允許您下載最新的應用程序版本并且構建您通過商店分發的崩潰報告。該服務收集并將類似的崩潰日志分組到崩潰報告中。每個應用程序的構建可能有多個崩潰報告,每個崩潰報告可能包含多個崩潰日志。但是,崩潰日志不會發送到Apple,除非用戶同意與應用開發人員共享崩潰數據。TestFlight用戶自動同意共享崩潰數據。該服務執行以下操作來生成崩潰報告:
1、從在用戶設備上運行的應用和附加應用中收集崩潰日志
2、表示崩潰日志(用可讀名稱替換內存地址)
3、比較堆棧跟蹤,以識別并將類似的崩潰日志分組到崩潰報告中
4、從崩潰日志中刪除所有個人用戶數據
5、提供發生崩潰的非重復設備的總數
6、為每個崩潰報告提供一組示例崩潰日志
7、每天更新崩潰報告
Xcode在崩潰組織者中顯示有關崩潰報告的信息:
查看崩潰報告之前
執行所有這些步驟以完全啟用崩潰報告服務。如果您之前已將帶有符號的應用程序上傳到iTunes Connect并使用TestFlight或商店分發過,則您可能已經在崩潰管理器中看到崩潰報告。如果您在“崩潰”管理器中未看到崩潰報告,請驗證是否已執行這些步驟。
? ? ? 1、在Xcode中,在賬戶偏好設置中,添加開發者的Apple ID,添加您的Apple ID帳戶中。
? ? ? ?2、按照設置版本號和構建字符串中所述設置版本和內部版本號。如果您正在分發您的應用程序的另一個版本,請增加構建字符串。
? ? ? ?3、創建單個應用程序歸檔,并將其上傳到iTunes Connect與符號,如上傳您的應用程序到iTunes Connect中所述。(請確保在點擊上傳之前選中了“為應用添加應用符號...”復選框。)
? ? ? ? 4、不要刪除您上傳到iTunes Connect的存檔。
? ? ? ? 5、在iTunes Connect中,按照TestFlight Beta測試(可選)中所述,使用TestFlight將應用程序分發給測試人員,或者將應用程序提交審核,如將應用程序提交到應用程序審閱中所述。
? ? ? ? 6、從應用商店下載應用的用戶需要同意與應用開發者共享崩潰數據,如使用應用開發者共享崩潰數據中所述。(TestFlight用戶自動同意共享崩潰數據。)
? ? ? ? 7、在Xcode中,要查看崩潰報告,請輸入作為團隊代理或管理員或iTunes Connect用戶的Apple ID。
? ? ? ? 8、在Xcode中,要從崩潰組織器中的堆棧框架轉到調試導航器中的源代碼,請打開已歸檔并上傳到iTunes Connect的Xcode項目。
此外,允許最多三天之間,從您第一次分發您的應用程序,當崩潰報告出現在Xcode。為了保持良好的用戶體驗,當用戶允許時,崩潰數據從用戶設備發送到Apple。
在崩潰管理器中查看崩潰報告
The Crashes organizer 顯示所有您的團隊開發的所有應用程序的崩潰報告。
查看崩潰報告
1、在The Crashes organizer,點擊crashes 。
2、在左側列中,從列表中選擇一個應用程序或本地存檔。
應用程序列表從iTunes Connect獲取,并包括有關您上傳到iTunes Connect的每個版本和構建的信息。
?3、在第二列的頂部,從彈出菜單中選擇一個版本和構建。
Xcode開始刷新您選擇的版本和構建的崩潰報告。Xcode下載前25個崩潰報告 - ?在過去兩周內,在非重復設備上發生次數最多的崩潰報告。
? 4、在第二列中,選擇崩潰報告。
崩潰報告的標題默認為可能發生崩潰的堆棧框架。崩潰唯一設備發生的次數顯示在崩潰標題下方。WatchKit擴展程序的崩潰報告用手表圖標()表示,其他應用程序擴展程序的崩潰報告用拼圖圖標()表示。
?5、在詳細信息區域中,查看崩潰日志。
詳細信息區域顯示每個線程的堆棧跟蹤。發生崩潰的堆棧幀以橙色突出顯示。
?6、在檢查器中,添加信息并查看崩潰報告的統計信息。
查看和查找崩潰報告
在崩潰報告列表中,執行以下操作:
1、要搜索崩潰報告,請在底部的搜索字段中輸入字符串。
2、要在Finder中查看崩潰報告的崩潰日志,按住Control鍵并單擊崩潰報告,然后選擇在Finder中顯示。
在詳細信息區域中,執行以下操作:
1、要查看崩潰報告的上一個或下一個崩潰日志,請單擊頁腳中的頁面箭頭(<或>),或單擊頁面計數(例如11 of 20),然后從彈出菜單中選擇一個頁面。
2、要折疊或展開崩潰日志,請單擊頁腳左下角的過濾器圖標()。折疊崩潰日志以僅查看應用程序中的堆棧框架。展開崩潰日志以查看所有堆棧幀,包括框架和系統堆棧幀。
編輯有關崩潰報告的信息
解決問題時,可以在本地存儲有關崩潰報告的信息。
在崩潰報告列表中,執行以下操作:
1、要將崩潰報告標記為已解決,請選擇崩潰報告旁邊的圓形或檢查器底部的圓形,然后點擊“標記為已解決”。
2、要顯示或隱藏已解決的崩潰報告,請在搜索字段旁邊的頁腳中選擇圈子()。
在詳細信息區域中,執行以下操作:
1、要更改崩潰報告的名稱,請將插入點放在標題中并編輯文本。
在檢查器中,執行以下操作:
要添加有關崩潰報告的注釋,請在注釋文本字段中輸入注釋。
在調試導航器中打開源代碼
1、在詳細信息區域中,執行以下操作:
2、要轉到堆棧幀的源代碼,將鼠標懸停在堆棧框架上,然后單擊右側顯示的箭頭。
要轉到發生崩潰的源代碼,請單擊將指針懸停在已突出顯示的堆棧框架上時出現的箭頭。
在檢查器中,執行以下操作:
1、要轉到堆棧框架的源代碼,請單擊“在項目中打開”。
Xcode打開關聯的項目并在調試導航器中顯示代碼行。
查看關于崩潰報告的統計信息
根據設備類型,操作系統和日期查看過去兩周的崩潰數據。要更改設備類型,請從彈出菜單中選擇設備類型。要更改操作系統,請從彈出菜單中選擇操作系統。
與應用開發者共享崩潰數據
如果用戶不與應用開發人員共享崩潰數據,Apple不能提供崩潰報告。如果用戶報告崩潰并且沒有相應的崩潰報告,請讓用戶與應用開發者共享崩潰數據。崩潰數據自動發送到Apple的TestFlight應用程序,而不是用戶從應用商店下載的應用程序。
給用戶這些指令。在所有平臺上,崩潰數據選項位于隱私設置的診斷部分。
與iOS開發人員共享崩潰數據
1、在設置中,點擊隱私。
2、滾動到底部,然后點擊診斷和使用。
3、如有必要,請點按與應用程序開發者共享開關啟用它。
同樣,要求Mac用戶與應用開發者共享其崩潰數據。
與Mac開發人員共享崩潰數據
1、在系統偏好設置中,單擊安全和隱私。
2、點擊隱私權,然后在左側列中點擊診斷和使用。
3、選擇“與應用開發者共享崩潰數據”。
要啟用隱私權選項,請點擊鎖定圖標。在出現的對話框中,輸入具有管理員權限的系統帳戶的憑據,然后單擊解鎖。
蘋果電視用戶也可以共享他們的崩潰數據。
與tvOS開發人員共享崩潰數據
1、在設置中,單擊常規,然后單擊隱私。
2、在診斷數據下,點擊“與應用開發人員共享”。
3、在顯示的對話框中,點擊“發送到蘋果”。
在設備窗口中查看和導入崩潰
在設備窗口中,您可以直接在設備上查看崩潰日志的詳細信息,或導入從其他來源收到的崩潰報告。如果您擁有包含匹配的構建和.dSYM文件的歸檔,Xcode會自動表示崩潰報告。Xcode使用人類可讀的函數名和行號來替換崩潰日志中的內存地址。然后,您可以在“設備”窗口中查看每個執行線程的堆棧跟蹤。
因此,請勿刪除您上傳,導出并分發給用戶的歸檔文件。例如,如果您使用自動配置配置文件或團隊配置配置文件(請閱讀導出您的測試應用程序(iOS,tvOS,watchOS)和導出應用程序以進行測試(Mac))分發應用程序,請保留存檔,以便導入從測試人員收到的未簽名崩潰報告。
您還可以查看使用TestFlight或商店分發的應用程序的崩潰。如果在上傳應用程序時包含位碼,商店將保留這些.dSYM文件,您必須先下載這些文件,然后才能在“設備”窗口中查看崩潰。如果您不包含bitcode或在應用商店之外分發您的應用,則您的存檔已包含這些.dSYM文件。
注意:如果您使用符號上傳應用程序,則可以在“崩潰”管理器中查看崩潰報告,如“崩潰管理器”中的“查看崩潰報告”中所述。
如果您在上傳應用程序時包括位碼,請先下載相關.dSYM文件。
下載dSYMs文件
1、在檔案管理器中,選擇存檔。
2、單擊下載dSYMs按鈕。
Xcode將.dSYM文件插入所選歸檔中。
重要:Xcode使用存檔中的版本號和內部版本號請求.dSYM文件。因此,在上傳應用程序之前,請始終增加構建號,如設置版本號和構建字符串中所述。
在設備上查看崩潰日志或導入崩潰報告
1、選擇“窗口”>“設備”。
2、如有必要,將設備連接到Mac。
3、在設備下選擇設備,然后單擊查看設備日志按鈕。
將顯示一張在設備上顯示崩潰日志的工作表。
4、要查看崩潰日志,請在左側列中選擇它。
在右側的詳細視圖中查看崩潰日志。
5、要導入崩潰報告,請將崩潰報告從Finder拖動到工作表的左側列。
6、點擊完成。
在Xcode中重現崩潰
確保測試崩潰的完全相同的構建。保存您分發用于測試或上傳到iTunes Connect的所有檔案。通過比較構建版本號和版本號來驗證Xcode中的歸檔是否與崩潰報告匹配。按照這些相同的步驟確定您是否正在測試您提交到商店的同一個版本。
對于Mac應用程序,要重現崩潰,請使用客戶帳戶,并重新安裝與崩潰報告匹配的OS X版本。請勿嘗試使用開發人員或管理系統帳戶重新創建崩潰,因為您可能無法分析問題。
支持的崩潰報告
崩潰日志從在這些操作系統版本上運行的應用程序收集,并且可以在這些Xcode版本中查看。