最近我的iphone項目走到了盡頭,但在應用程序運行期間遭受了一些隨機崩潰,並且調用堆棧始終位於COCOA庫中,難以解決問題,不知道如何處理它,因爲有些案例我甚至懷疑是蘋果的缺陷?Iphone隨機崩潰問題
我的問題。
對於那些重現率很低的隨機崩潰問題,你們如何處理它?任何有助於提高可重現率的方法?
如何解決位於COCOA庫中的這些崩潰問題?如何找到更多線索?
任何想法或討論將不勝感激,在此先感謝。
最近我的iphone項目走到了盡頭,但在應用程序運行期間遭受了一些隨機崩潰,並且調用堆棧始終位於COCOA庫中,難以解決問題,不知道如何處理它,因爲有些案例我甚至懷疑是蘋果的缺陷?Iphone隨機崩潰問題
我的問題。
對於那些重現率很低的隨機崩潰問題,你們如何處理它?任何有助於提高可重現率的方法?
如何解決位於COCOA庫中的這些崩潰問題?如何找到更多線索?
任何想法或討論將不勝感激,在此先感謝。
意味着COCOA代碼是錯誤的 - 很可能你向它提供了一些無效的數據(例如,它不應該在那裏)。如果它隨機發生,可能會出現一些多線程併發性,或者某些對象變得(自動)發佈得太早等等。您必須認真分析您的代碼,這些代碼可以在崩潰發生的COCOA類中運行,或者嘗試將內存管理調試由其他答覆者建議。
一般來說,我並不認爲這是COCOA的問題。它發生了,但大多數情況下,錯誤是我們的錯誤。
當這種崩潰發生時,首先要做的就是運行靜態分析器,有時候這只是一個保留/釋放問題。 如果您使用ARC,請跳過此部分並開始創建異常斷點(在鏈接指南中搜索'To add an exception breakpoint...')。異常斷點有助於在拋出異常時獲得更詳細的崩潰日誌。
第三步是使用儀器,尋找浪費記憶,泄漏和任何其他形式的內存泄漏。在一些WWDC視頻中深入解釋瞭如何使用樂器。
啓用NSZombie標誌。 項目(在Xcode的頂LeftCorner)>診斷>使殭屍對象
將LTE你知道在那裏我們的代碼崩潰..find如果可可代碼的應用程序崩潰,沒有它解決它
是的,有助於解決某些指針發佈崩潰問題。 – jianhua 2012-04-17 06:17:47
你的代碼是什麼樣的,你試過了什麼?當你的應用程序崩潰時,你也需要發佈你在Log中獲得的內容。 – 2012-03-14 07:25:32
由於大部分時間內存問題都會發生應用程序崩潰不一致......請在儀器中分析您的代碼。 – Tirth 2012-03-14 07:52:36