iOS LLDB常用命令

作者: 豪冷 | 来源:发表于2019-10-11 15:18 被阅读0次
    测试环境:Xcode
    版本:10.2 (10E125)
    

    快捷键

    • LLDB控制台快捷键:command + shift + y

    命令

    p / po / print

    示例1:打印

    (lldb) p self.view
    (UIView *) $2 = 0x000000010cf1ba40
    

    示例2:打印

    (lldb) po self.view
    <UIView: 0x10cf1ba40; frame = (0 0; 375 812); autoresize = W+H; layer = <CALayer: 0x280ebf2e0>>
    

    示例3:打印

    (lldb) print self.view
    (UIView *) $3 = 0x000000010cf1ba40
    

    e / expression

    示例1:打印

    (lldb) e self.view
    (UIView *) $7 = 0x000000010cf36e70
    

    示例2:打印

    (lldb) expression self.view
    (UIView *) $7 = 0x000000010cf36e70
    

    示例3:修改

    (lldb) e self.view.backgroundColor = [UIColor lightGrayColor]  // 改变颜色
    (UICachedDeviceWhiteColor *) $11 = 0x0000000280a77db0
    (lldb) e [CATransaction flush]   // 刷新
    

    image lookup -address 查找崩溃位置

    image lookup -a 0x00000001009e9c3f (崩溃日志中的某个地址)


    image lookup -name 查找方法来源

    image lookup -n 方法名称


    image lookup –type 查看类的属性和成员变量

    image lookup -t 类名


    -2019-10-24 20:19:32

    e / expression

    修改控件时
    当前环境没有控件变量名
    可以通过控件地址来操作
    Debug View Hierarchy模式下
    先打印控件的信息:

    如:
    <UILabel: 0x134a55ac0; frame = (126.562 154; 121.875 20); text = '版本号:1.0.0'; userInteractionEnabled = NO; layer = <_UILabelLayer: 0x28188e9e0>>

    再进一步操作:

    (lldb) e (void)[(id)0x134a55ac0 setText:@"版本号:1.0.1"]      // 修改文字
    (lldb) e (void)[CATransaction flush]
    (lldb) e (void)[(id)0x134a55ac0 setBackgroundColor:[UIColor greenColor]] //修改背景颜色
    (lldb) e (void)[CATransaction flush]
    
    测试环境:Xcode
    版本:11.1 (11A1027)
    

    相关文章

      网友评论

        本文标题:iOS LLDB常用命令

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