Xcode6开始苹果已经将Reveal的查看UI布局功能集成到了Xcode中,但是这样只能查看自己的App,想要查看他人的App怎么办呢,那么我们首先需要一台越狱设备。这次教程内容主要有:
- 下载Reveal
- 查看自己App
- 查看别人App
下载破解版Reveal
这里给出了别人已经破解好的RevealReveal4-8796,提取密码:fjvc
,当我们学好逆向这块知识后,可以自己尝试破解Reveal,当然这里还是建议大家用正版的,传送门
下载之后打开里面Reveal48796[Cr].dmg
文件,把Reveal拖到到应用列表中去:
里面还有一个
.lldbinit
文件,需要注意的是这个文件是隐藏文件,用于lldb命令开启Reveal调试,需要把它拷贝到根目录下,每次Xcode启动时,会检测到里面的命令,可选。
查看自己App
方法一之lldb命令:
- 使用lldb命令,也就是利用前面的
.lldbinit
文件,首先需要拷贝,这里使用命令行cp /Users/gcf/Desktop/破解版/.lldbinit ~/.lldbinit
,前面路径为我下载后的文件路径,后面路径为目标路径:
可以使用open ~/.lldbinit
打开拷贝之后的文件,可以看到里面的内容为:
- 第一个命令
load
用于启动Reveal - 第一个命令
sart
用于加载目标App - 第一个命令
stop
用于停止加载目标App
-
启动Xcode打开我们的App,暂停程序:
或者随便找个地方下个断点都行。
- 依次输入
load
和start
命令:
-
打开Reveal应用,就能看到我们想要查看的App了:
-
使用Reveal动态修改App控件属性:
修改之前按钮的字体和颜色:
通过动态调整控件属性,能够让我们快速定位到相关控件。
方法二之添加FrameWork:
-
打开Reveal选择顶部菜单Help->Show Reveal Library in Finder->iOS Library
- 将
RevealServer.framework
添加到工程中,target->General->Enbedded Binaries->Add-> RevealServer.framework:
Linked Freameworks and Libraries中也有一个,不用管。 -
运行项目之后,命令行会有提示,代表成功:
Reveal中也能查到:
如果要调试真机,则按这种方法,直接运行真机即可,这里有两个图标,一个代表用USB连接,另外一个用WIFI连接:
需要注意的是,上架AppStore时,记得把这个FrameWork去掉,不然有可能被拒哦。
查看别人App
-
说完一大堆怎么使用Reveal,主要目的还是想查看别人的App,首先在越狱设备上安装
Reveal Loader
:
安装后会重启SpringBoard。
假若安装失败,可以尝试别的软件源,这里推荐:http://apt.so/otools/
,我这里用的是pad,这个源刚好能安装成功:
-
查看RHRevealLoader文件夹
搜索Library下是否存在RHRevealLoader文件夹,ls -l /Library/ | grep RHRevealLoader
,我这里是存在的:
如果不存在,则手动创建,mkdir /Library/RHRevealLoader
,然后按照上述同样操作,打开Reveal选择顶部菜单Help->Show Reveal Library in Finder->iOS Library,把RevealServer.framework下的RevealServer拷贝到RHRevealLoader文件夹下,拷贝方式可以通过iFunBox手动操作,也可以用命令scp /Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/RevealServer.framework/RevealServer root@10.21.0.51:/Library/RHRevealLoader/libReveal.dylib
-
加载指定App
在设置里选择Reveal->Enabled Applications->设置,我们查看系统设置的UI布局:
-
查看指定App
把iPad上的设置关闭,重新打开,再打开Mac上的Reveal,就可以查看到设置了:
-
修改控件属性