使用Xcode進行iOS軟件開發的小朋友們,在調試程序的時候經常會遇到Crash,錯誤提示 SIGABRT 和 EXC_BAD_ACCESS 較爲常見。
在網上查到的”SIGABRT是系統報錯,在memery warning之後,系統會把程序強制退出,報的就是這個錯誤。 EXC_BAD_ACCESS 大多數時候是內存提前釋放而引起的問題,或者訪問的方法不存在引起的。“。
要想查找錯誤出現在什麼位置除了打斷點調試外,還有以下兩種常用的方法
1、添加Symbol breakpoint Exception breakpoint“。具體怎麼添加網上的教程有很多,很簡單。
2、設置添加殭屍信號(zombieSignal)。
下面簡單說一下設置殭屍信號(zombieSignal)的步驟(以xcode5爲例)
1> 在Xcode菜單欄上點擊”Product“ -> ”Scheme“->"Edit Scheme...",如圖1-1
圖1-1
2>在執行完步驟1後 出現如圖1-2的界面。
圖1-2
3>點擊”Environment Variables“下的”+“號添加殭屍信號,在Name對應的輸入框中輸入 NSZombieEnabled, 設置對應的Value值爲 YES。添加完成如圖1-3.
圖1-3
設置好NSZombieEnabled後,再次運行程序,程序崩潰後 在控制檯就會打印出導致程序崩潰的更加詳細的信息,以幫助我們找到到底是那塊代碼出問題了。