美文网首页
Xcode中的debug及使用debug安装LookInServ

Xcode中的debug及使用debug安装LookInServ

作者: 独孤流 | 来源:发表于2022-02-18 12:51 被阅读0次

    调试相关参考:xcode 中的调试
    重点说下Symbol BreakPoint: 给全局中的函数添加断点

    前言:最常见的场景是代替在appDelegate里引入某些调试工具,比如如下的injection,但是又不想提交这个调试信息影响其他伙伴,只能在提交代码时删除或注释掉,提交完代码然后再打开,这样容易导致某些忘记注释就提交或者频繁操作令人厌烦的问题

    一、injection
    参考:injectionIII工具:让iOS开发调试实现热重载

    1.1 在App Store上搜索下载injectioniii

    截屏2022-02-18 上午11.53.01.png

    1.2 启动下载好的injectioniii选中对应的项目文件夹

    1、选择Open Project,然后选中对应的项目文件夹,再选中Select Project Directory


    截屏2022-02-18 下午12.28.46.png
    2、确保选中File Watcher
    截屏2022-02-18 下午12.29.35.png

    1.3


    1.3.1 常规引入injection的方式
    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    /// 要引入某些调试工具,比如injection
      [[NSBundle  bundleWithPath:@"/Applications/InjectionIII.app/Contents/Resources/iOSInjection.bundle"] load];
    }
    

    1.3.2使用Symbolic BreakPoint引入的方式

    选中一个项目,然后选中debug拦,点击+,然后选中Symbolic Breakpiont

    截屏2022-02-18 下午12.02.06.png

    1、输入自定义名称:这个随便输入就可以,我输入的是injectionIII
    2、输入调试方法:UIApplicationMain,这个方法就相当于在- application:didFinishLaunchingWithOptions:里引入
    3、选择action:Debugger Command
    4、输入调试引入的内容:po [[NSBundle bundleWithPath:@"/Applications/InjectionIII.app/Contents/Resources/iOSInjection.bundle"] load]
    5、选中自动继续

    截屏2022-02-18 下午12.11.33.png

    如果是要给每个项目都同步这个设置,直接将设置移动到User下就可以


    截屏2022-02-18 下午12.34.44.png

    一切设置完毕运行项目后会是如下效果


    截屏2022-02-18 下午12.35.49.png

    如果有修改项目文件,然后按cmd+s保存,则图标会变成绿色,并有日志输出

    截屏2022-02-18 下午12.37.08.png
    等编译热加载结束,然后图标会变黄色,并有相应日志输出
    截屏2022-02-18 下午12.37.21.png

    引入LookIn的UI调试也是类似,
    一、下载安装LookInServer: https://lookin.work/get/
    唯一不同的是输入的调试命令是

    expr (Class)NSClassFromString(@"Lookin") == nil ? (void *)dlopen("/Applications/Lookin.app/Contents/Resources/LookinServerFramework/LookinServer.framework/LookinServer", 0x2) : ((void*)0)
    

    参考:
    如何使用 Xcode 断点添加 Lookin 的 iOS Framework ?

    最后完整效果:


    截屏2022-02-18 下午12.50.12.png

    相关文章

      网友评论

          本文标题:Xcode中的debug及使用debug安装LookInServ

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