你生了气就哭,我一看见你哭就目瞪口呆,就像一个小孩子做了坏事在未受责备之前目瞪口呆一样,所以什么事你先别哭,先来责备我,好吗?
——王小波《爱你就像爱生命》
简介
工欲善其事,必先利其器
Reveal
在逆向工程中不仅仅可以用来查看分析别人App的UI层次结构,还可以用来帮助我们在平时开发中快速定位问题。- 对于初学者来说,去分析其他优秀App的界面实现,能够帮助快速提升开发能力。
- 我的环境配置:
- 越狱iPhone5c 10.3.2
- Mac 10.13.5 并且安装有Reveal version 4(8796)
所有资料文件&工具在这里
了解更多:
在越狱设备上配置Reveal
Reveal Loader安装
- 首先在越狱设备的Cydia中输入搜索
Reveal2Loader
,并且进行安装即可。这一步比较简单,安装后重启SpringBoard即可。 - 注意安装最新的
Reveal2Loader
,兼容iOS8/9/10,如果越狱设备系统版本过低,请下载旧版本Reveal Loader
安装即可。
导入libReveal.dylib
- 安装完成
Reveal2Loader
后查看在/Library/
路径下下是否存在RHRevealLoader
这个文件夹,并且查看该文件夹中是否有libReveal.dylib
这个文件。 - 可以使用电脑端助手工具查看,也可以在终端查看
1 | // 连接手机 |
文件夹存在
- 如果存在
libReveal.dylib
这个文件,则安装Reveal完成。
文件夹不存在
如果不存在
libReveal.dylib
这个文件,按如下步骤手动创建
RHRevealLoader
这个文件夹,可以使用iTools
或者Filza
,也可以通过指令创建1
mkdir RHRevealLoader
在Mac电脑上打开
Reveal
,打开Reveal菜单 -> Help -> Show Reveal Library in Finder -> iOS Library
注意:新版本的
Reveal
已经没有libReveal.dylib
这个文件,只存在一个RevealServer.framework
文件。- 我们需要找到这个库文件下的
RevealServer
并复制一份到桌面,重命名为libReveal.dylib
- 我们需要找到这个库文件下的
将
libReveal.dylib
这个文件放入手机刚创建的/Library/RHRevealLoader/
这个文件夹内。可以使用iTools
,也可以通过指令上传1
scp /Users/sevencho/Desktop/libReveal.dylib root@192.168.1.60:/Library/RHRevealLoader/libReveal.dylib
至此,手机的
Reveal
安装配置完成。重启手机
就可以愉快的和新认识的基友小伙伴一起玩耍了。
Reveal的使用
在设备上选择想要Reveal的App
- 在越狱设备上安装完Reveal Loader后就可以在设置中找到Reveal的配置项,在该配置项中我们可以去选择要Reveal的App。
- 对于越狱手机,手机上安装的所有App都可以Reveal。当然也包括从AppStore下载的,也包括iOS系统自带的。如下所示:
查看App的UI层级
- Mac上Reveal查看设备上App的UI层级时可以通过USB进行连接。
- 也可以使用wifi连接,但要保证你的iOS设备与你的Mac在同一个局域网内。