2016-11-28 40 views
0

我遇到了一個錯誤,只有當我的應用程序被冷啓動以響應某種類型的遠程通知時纔會發生。如何在沒有附加調試器的情況下拖動iOS設備日誌?

爲了忠實地重現錯誤,我需要在真實的設備上以便接收通知,並且由於它發生在冷啓動時,我不能將調試器連接到進程。

有什麼可以想象的方式讓我訪問控制檯日誌(最好是實時)?

我試過這個解決方案:https://github.com/benvium/libimobiledevice-macosx 但它似乎並不適用於最新版本的MacOS。 (我得到的錯誤usbmuxd_send: Error -1 when sending: Broken pipe X2)

PS-我知道我可以使用Xcode的「設備」窗口,但有一噸的噪音在那裏,我不能實時過濾它AFAIK

感謝

+0

我已經在過去使用的兩種方法包括:1。登錄信息在應用程序的文檔文件夾中的文本文件(您可以再檢查,當你使用Xcode的設備窗口中的「下載容器」功能) 。我想你可以使用CloudKit,如果你想自動化下載過程。 2.在應用程序中添加tableview,允許我查看消息列表(反向時間順序很有用),僅在調試時啓用。這兩者都不是很好的解決方案,但它們都比通過設備控制檯(通過設備窗口,恕我直言)看到的更好。 – Rob

+0

@Rob。 Xcode 8.2中的下載容器現在在哪裏?我在設備的任何地方都找不到它。附:如果你想寫一個Swift/iOS 10版本來推動極限,那將會很棒。 – Gruntcakes

+0

選擇設備,然後選擇設備上的應用程序,然後點擊齒輪圖標... – Rob

回答

0

不幸的是,最好可靠辦法做到這一點是使用Xcode的設備窗口,清除輸出,然後重現bug並最終複製和整個輸出粘貼到一個單獨的文件。

一旦進入單獨的文件,您可以使用grep或類似的工具進行過濾。

這不是完美的,但它每次都適用於我。設置非常明顯的日誌語句也有幫助。

相關問題