调试小技巧
1、Add Exception Breakpoint (开启全局断点)捕获crash
2、定位unrecognized selector错误,设置symbol断点,添加"-[NSObject(NSObject) doesNotRecogizeSelector:]"
3、Enable NSZombie Objects(开启僵尸对象)内存重复释放
4、通过Xcode - Window - Organizer - Crashes,查看用户上报的Crash日志
5、通过Xcode - Window - Devices and Simulators - View Device Logs,查看设备的Crash日志
6、通过控制台 - 选择设备 - 点击开始,查看NSLog日志
LLDB调试 - 细节说明
-
p:打印对象的详细信息
-
call:调试中加入一段代码,用于调试数据或者界面
-
expr:调试中修改变量的值
-
image:定位异常代码位置(image lookup --address 内存地址)
-
bt:用来打印调用堆栈,加all可打印所有thread的堆栈