美文网首页
iOS 源码探索的三种方式

iOS 源码探索的三种方式

作者: 远方竹叶 | 来源:发表于2020-09-07 13:29 被阅读0次

    iOS 开发探索源码的方法有三种:符号断点直接跟流程;control + step into;汇编跟流程。下面根据图文的形式介绍这三种方式

    首先我们在 ViewController 的 viewDidLoad 方法中下个断点

    1. 符号断点跟流程

    运行项目,此时会在我们打的断点处停留,此时,选择符号断点

    输入要查找的方法名,enter 符号断点已生效

    之所以在 viewDidLoad 的断点到来之后再打 alloc 的符号断点,因为 alloc 的调用很多,如果运行前开启不能精准的定位是不是 Person 的 alloc 方法。点击进入下一步

    alloc 符号断点断住的堆栈调用情况,从下图可以看出 alloc 的源码位于libobjc.A.dylib库

    2. control + step into

    运行项目,此时会在我们打的断点处停留,按住 control 键,点击 step into

    进去后,显示

    此时打开符号断点,输入 objc_alloc

    点击 enter,符号断点就会显示 objc_alloc 所在的源码库

    3. 汇编

    运行项目,此时会在我们打的断点处停留,工具栏选择 Debug --> Debug Workflow --> Always Show Disassembly,通过汇编跟流程

    此时会跳转到汇编,显示如下

    按住 control 键, 点击 step into 键,执行,之后看到断点在 objc_alloc 处

    同样通过 objc_alloc 的符号断点,得到源码所在库

    相关文章

      网友评论

          本文标题:iOS 源码探索的三种方式

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