美文网首页
LLDB调试

LLDB调试

作者: 闻道刘 | 来源:发表于2017-05-31 17:06 被阅读40次
    我常用的都在这里了
    • 给指定的地址加断点
      watchpoint set expression -- 0x7ff1af665390

    • 给变量加断点
      watchpoint set variable

    • 自动给类里面每个方法加断点
      breakpoint set -r '\[ClassName .*\]$'

    • 找到响应事件的类
      po [(0x7ff1af665390) allTargets];
      {(
      <XXXClass: 0x7ff1b1037000; baseClass = UITableViewCell; frame = (0 65; 375 150); autoresize = W; layer = <CALayer: 0x608000626a80>>,
      <XXXClass: 0x60000001c750>
      )}

    • 找到响应事件的方法
      po [(0x7ff1af665390) actionsForTarget:(id)0x7ff1b1037000 forControlEvent:0];
      <__NSArrayM 0x600000a5f920>(
      XXXMethod:
      )

    • 打印对象的内容
      p *((XXXClass *)0x7fb2fc601e40)

    • 打印对象属性的内容
      p *((XXXClass *)0x000060800044ccc0).XXXProperty

    • 改变某个view的属性
      //e.g.临时改变view的颜色
      expr aView.backgroundColor = [UIColor redColor];

    • 打印对象地址
      po object

    • 打印所有通知中心的观察者
      po [NSNotificationCenter defaultCenter]
    抛砖引玉,大家自由发挥。更多命令可以去lldb官方网站查看

    //official website
    https://lldb.llvm.org/
    //about custom command
    https://stackoverflow.com/questions/12829665/how-to-call-methods-or-execute-code-in-lldb-debugger
    //about swift
    https://stackoverflow.com/questions/37390238/how-can-i-set-lldbs-default-language-to-swift

    相关文章

      网友评论

          本文标题:LLDB调试

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