IOS調試—斷點調試以及動態輸出
在開發App的過程中。須要重復的改動和優化我們的代碼,特別是當程序出現bug,須要高速的找出錯誤的原因,進行改動,以保證程序的正確運行。
斷點調試,是最經常使用最簡單的一種調試方式,能夠一步步跟蹤程序運行的流程,得到變量的值,高速的找到錯誤的原因。
1、斷點的基本操作
斷點的操作很easy,以下通過幾張圖來介紹一下怎樣加入、刪除、編輯以及使用斷點。
2、全局斷點
設置全局斷點(異常斷點)。當遇到錯誤,Debug程序會自己主動定位到棧底信息,即跳到出錯代碼所在行。
3、條件斷點
設置條件斷點。當滿足條件的時候,才觸發斷點,適合用於循環結構中,能夠準確的定位到某次循環。
4、符號斷點
符號斷點能夠中斷指定函數的調用。也能夠定位到出現異常的代碼處。並打印異常信息。
5、NSLog輸出
在調試的過程中。常常通過NSLog在控制臺輸出須要的信息。
NSLog輸出比較消耗系統資源。輸出的數據也可能會暴露出App裏的保密信息,所在在公布正式版本號之前必須把全部的NSLog輸出都屏蔽掉。
NSLog除了輸出基本信息,對於結構體也能夠一次性輸出。
6、動態輸出
在程序的調試過程中。除了通過斷點調試在Xcode下方查看變量的值,也能夠通過NSLog在控制臺輸出想要的信息。使用NSLog輸出須要在執行前就把想要輸出的信息寫好,假設有改變,須要又一次編譯執行。效率很低。
以下介紹一種很easy有用的方式。在程序執行的過程中,通過在控制臺輸入對應的指令,能夠高速的打印輸出須要的信息,很的方便。
動態輸出的指令有兩個,p和po,與NSLog使用方法類似。p用於打印輸出普通信息。po用於打印輸出對象信息。
使用動態指令須要與斷點配合使用。這樣就行動態的打印輸出程序運行到某個斷點時的信息。
IOS調試—斷點調試以及動態輸出