0
点赞
收藏
分享

微信扫一扫

Reveal-加载利用全局断点


<欢迎大家加入iOS开发学习交流群:QQ529560119>

在网上搜怎么加载Reveal的,好多都是利用Reveal.frameWork来拖进工程里面,这样很不方便,每次更换新工程都要这样做,这里给大家讲解一个利用配置一个全局断点来触发,换工程也不用重新设置,方便很多。

下面是详细的配置步骤:

1.在Xcode中打开一个iOS项目,选择菜单项View → Navigators → Show Breakpoint Navigator.

2.在左侧的导航面板下方,点击“+”并且选择【Add Symbolic Breakpoint 】菜单项,如下图所示:




Reveal-加载利用全局断点_iOS



3.在弹出面板的Symbol字段中填写“UIApplicationMain”,如下图:



Reveal-加载利用全局断点_iOS_02



4.点击Add Action 按钮,如下图:



Reveal-加载利用全局断点_iOS_03



5.复制如下的命令粘贴到上图中所示的编辑框:

expr (Class)NSClassFromString(@"IBARevealLoader") == nil ? (void *)dlopen("/Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/libReveal.dylib", 0x2) : ((void*)0)

如下图所示:



Reveal-加载利用全局断点_字符串_04



上述命令中,有个路径字符串

/Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/libReveal.dylib

Application目录下,可以利用终端拿到Reveal的目录,再粘贴到这里即可。例如我的Reveal是在桌面上

/Users/mac020/Desktop/Reveal.app 。可以复制Users/mac020/Desktop替换上面路径中的Applications就可以了

)。

6.勾选Automatically continue after evaluating actions选项。不勾选的话每次运行项目都会断点停一次,勾选后程序直接运行




Reveal-加载利用全局断点_字符串_05



7.完成上述步骤以后,在新创建的断点上面点击右键,弹出如下菜单并选择,如下图所示:



Reveal-加载利用全局断点_菜单项_06



现在,所有的配置步骤均已完成。以后无论分析任何项目,都可以直接启动Reveal 并分析。

现在启动一个项目调试,Xcode控制台会输出如下log,表明配置正确,Reveal已经可以正常启动使用,如下图所示:



Reveal-加载利用全局断点_字符串_07



接下来启动Reveal,如下图操作:



Reveal-加载利用全局断点_菜单项_08



下面体验一下Reveal的强悍吧:



Reveal-加载利用全局断点_字符串_09




在上面这个演示demo中,足以说明Reveal的强大与方便,各种层次结构一目了然,特别是针对那些不规则的UI实现,可以进行方便的分析。

举报

相关推荐

0 条评论