Reveal是一个强大的UI分析工具,使用它可以查看各个界面的视图层级,在解决界面显示问题时非常有用。它最大的特点就是非常直观,查看UI布局的时候非常方便。
我们知道,Reveal官网提供的方法只能监测、调试自己的App,第三方的App无法监测。本篇我们来用Reveal工具实现分析任意的App。
1.准备工作
- 准备一个越狱的设备;
- 获取libReveal.dylib并导入到设备;
打开Reveal, 点击菜单栏上的Help
, 选择Show Reveal Library in Finder,如下图所示:
Reveal版本不同,这一块可能有一些区别,有的打开之后,直接可以看到libReveal.dylib,我这里打开之后的目录如下:
选择上面的"RevealServer",拷贝到桌面,并改名为“libReveal.dylib”。
使用iExplorer工具将该文件拷贝到目标设备的“/Library/MobileSubstrate/DynamicLibraries”文件夹中,如下图所示:
当然,上面的操作也可以使用scp指令。
- 编写libReveal.plist并导入到设备;
在桌面创建libReveal.plist,输入需要分析的App的BundleId,可以多个,示例如下:
{ Filter = { Bundles = ("com.tusheng.iosapp.AskDoctor"); }; }
同上,可使用iExplorer工具将该文件拷贝到目标设备的“/Library/MobileSubstrate/DynamicLibraries”文件夹中,如下图所示:
2.分析指定App
- 打开Reveal,打开iPhone上指定的App,这时Reveal主界面上会出现该App,选择App;
- 切换页面后,可以点击Reveal上方的刷新按钮,如下图所示: