2012-05-15 88 views
1

所以,這有點莫名其妙,我不知道該怎麼做。幾分鐘使用後,我的應用程序會隨機崩潰,並始終以相同的操作(相同的模態視圖被解散)。崩潰並不總是會發生,但它發生在模擬器和真實設備上。iOS應用程序崩潰沒有任何錯誤消息

我試過:

  • 確保我在調試模式(當然,但什麼也沒發生)
  • 啓用內部後衛的malloc(無)
  • 運行儀器(無)
  • 直接從終端運行iPhone模擬器,然後將LLDB附加到應用程序(無非是一個CL assic 退出代碼爲0)
  • 添加異常斷點(沒有意義)

我嘗試的最後一件事是在exit功能附加一個斷點。應用程序停止,但我沒有一個有意義的堆棧跟蹤(見下文)。

Stack trace on exit

另外,我也做了一些初具雛形的東西和Lua,所以它可能是相關的。在Mac OSX日誌顯示這裏這個奇怪的行:

5/15/12 2:16:57.190 PM com.apple.debugserver-170.1: 1 +0.000000 sec [233b/1a03]: error: ::read (1, 0x10af80a60, 1024) => -1 err = Bad file descriptor (0x00000009) 

如果您有關於如何獲得更有意義的堆棧跟蹤,例如至少獲得圖書館/模塊/文件/無論負責該exit調用任何想法,這將有很大的幫助!

+0

錯誤日誌條目似乎表明存在與com.apple.debugserver呼叫處理一個文件有問題。您的手機是否會在運行5.1的實際iOS設備上崩潰? –

+0

是的,它確實... –

回答

0

轉到Breakpoint導航器(快捷方式:cmd + 6),在左下角你會看到一個+圖標。點擊它並選擇「添加異常斷點」。希望這可以幫助。

+0

我忘了提,我也試過。它沒有得到 –

0

這是一個猜測,但你有你的目標的其他鏈接器標誌中有-weak_library /usr/lib/libSystem.B.dylib?至少在模擬器上會導致不同地方出現奇怪的崩潰 - Cordova/phonegap生成的應用程序包含此標誌,而某些版本的亂舞和urbanairship也會使用它。

如果更換-weak-l系統/usr/lib/libSystem.B.dylib和崩潰-weak_library /usr/lib/libSystem.B.dylib消失。

+0

不,我沒有使用這些庫的任何更有意義......(編輯問題),以及「其他鏈接器標記」字段爲空... –

0

你可能認爲它很痛苦,但也許你可以嘗試在你的所有方法中放置NSLog語句?

順便說一句,嘗試延遲一秒或兩秒的模態解僱,以消除這是一個問題的指標。

你的應用還在做什麼?

+0

謝謝,我沒有想到延遲模態解僱。我會嘗試。至於把NSLog語句放在我的所有方法中,老實說,我只會認爲作爲最後的手段,它是一個非常大的項目。 –

相關問題