在开发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用于打印输出对象信息。
使用动态指令须要与断点配合使用。这样就行动态的打印输出程序运行到某个断点时的信息。