iOS開發何如在除錯的時候輕鬆找到程式在哪裡崩潰
阿新 • • 發佈:2019-02-17
起因
有不少人在評論發一些崩潰資訊,問我程式怎麼回事,其實如果你知道了程式崩潰在哪行程式碼崩潰了,就很容易定位問題了。android開發看崩潰log就能看到具體哪行程式碼出問題,那在iOS開發怎麼快速定位到具體哪行程式碼崩潰呢。
步驟1
在xcode新增一個通用斷點就行了。方法如下:
點選專案導航斷點那,如圖
步驟2
點選+號:
一步步按上面圖完成操作。
再執行程式
自動就斷點到這裡來了,
log資訊是:
-
2013-05-20 11:14:19.635 GestureRecognizer[1491:c07] -[__NSCFNumber isEqualToString:]: unrecognized selector sent to instance 0x7a88df0
- 2013-05-20 11:15:21.148 GestureRecognizer[1491:c07] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFNumber isEqualToString:]: unrecognized selector sent to instance 0x7a88df0'
這樣很簡單就能發現程式崩潰是因為value沒有 isEqualToString方法。
如果我沒加上面這個通用的斷點,那程式會直接斷點到main函式去。
PS:這個方法只能絕大部分這樣的崩潰。有少部分錯誤是斷不到了。