美文网首页程序员
iOS调试技巧—— LLDB指令

iOS调试技巧—— LLDB指令

作者: _烈日 | 来源:发表于2017-03-23 14:28 被阅读119次

基础操作

指令 作用
c continue,进程继续运行
r run,进程重新运行
kill run,kill进程
s step-in
n step-over
finish step-ou

断点

指令 作用
b 打印所有断点
b -[NSString stringWithFormat:] Objective-C函数断点
b objc_msgSend C/C++函数断点
b resignFirstResponder 对所有含有resignFirstResponder的函数进行断点
br del 1 删除某个断点(标号可以通过「打印所有断点」取得

堆栈

指令 作用
bt 打印当前线程堆栈
bt all 打印所有线程堆栈
up 跳到上一个调用栈
down 跳到下一个调用栈

p 和 po

p指令可以打印结构体以及基本类型,有时会出现异常,尝试类型强转,如 p (int)a 。

除了p指令外,LLDB增加了po,如 po self ,用来打印一个OC对象的description。

又如下面这句:

po [[[UIApplication sharedApplication] keyWindow] recursiveDescription]```

– [UIView recursiveDescription]

可以用来打印一个UIView的层次结构。在Reveal还没有出来之前,这个方法是用来快速查看UIView的层次结构。

事实上,p 和 po 指令是用来执行代码,并输出返回值结果。用来打印输出只是返回结果罢了。所以,在断点处输入

po [self.view setBackgroundColor:[UIColor whiteColor]]```
是可以实时生效的。

其他

image指令可以操作符号相关的东西。

image lookup -a 0x0916cf7a
image lookup -r -n UIWebView

上面两个指令,前者通过地址打印符号,后者通过关键字打印与此关键字相关的符号。

参考

The LLDB Debugger

相关文章

  • iOS开发之LLDB常用调试技巧

    原文地址iOS开发之LLDB常用调试技巧用好了LLDB,让调试变得轻松愉快,本文会写出并示例讲解一些常用的指令,以...

  • iOS调试技巧—— LLDB指令

    基础操作 断点 堆栈 p 和 po p指令可以打印结构体以及基本类型,有时会出现异常,尝试类型强转,如 p (in...

  • Swift 常用快捷键

    iOS开发之Xcode常用调试技巧总结 Xcode 常用快捷键 lldb技巧:

  • iOS调试之chisel

    iOS调试之chisel Chisel 是一个 LLDB 指令集合,用户辅助 iOS 应用差错。 安装 chise...

  • 深挖Xcode lldb调试命令,提高调试Debugger能力,

    本文讲解 lldb 指令解释,意为快速掌握 lldb 调试指令。指令来着Apple Doc Debugger co...

  • Chisel的安装以及使用

    iOS调试之chisel Chisel 是一个 LLDB 指令集合,用户辅助 iOS 应用差错。 安装 1.chi...

  • iOS 调试

    iOS调试 - NSLog iOS调试 - 断点 iOS调试 - LLDB iOS调试 - EXC_BAD_ACC...

  • ptrace反调试

    一、iOS调试 iOS调试里面非常常见的就是LLDB调试,LLDB是Xcode自带的调试工具,既可以本地调试Mac...

  • Swift 关于Crash的一些看法

    之前写的几篇文章iOS调试技巧, LLDB, LLVM, 解析dSYM文件 都是可以有效调试错误, 这篇文章主要是...

  • 十六、LLDB(一)

    学习LLDB指令。掌握LLDB指令,不仅仅在逆向上有用,在平时开发调试中也是事半功倍。 一、简介 终端上的LLDB...

网友评论

    本文标题:iOS调试技巧—— LLDB指令

    本文链接:https://www.haomeiwen.com/subject/ajvwnttx.html