iOS View Hierarchy杀器-Reveal的使用

前言

Reveal(http://revealapp.com)是一款十分优秀的iOS View Hierarchy工具(收费,试用30天),功能跟Xcode自带的类似,可用于查看相关界面的布局,支持2D、3D视图切换效果,但是比起Xcode自带的功能要强大许多,使用的时候可以方便地调试和进行应用界面修改,不用每次修改代码再重新启动,并且能够看到每个UI控件的约束条件,界面的大小等等,对于开发者应用界面调试以及学习优秀应用界面布局都是一大利器。


准备

一部越狱手机,Reveal软件


Reveal功能模块简述

更多的使用技巧可自行搜索或探索,这里不做赘述

iOS View Hierarchy杀器-Reveal的使用_第1张图片
Reveal界面功能模块


使用场合


第一种使用场合,应用于已有源码项目

①执行以下步骤找到Reveal.framework的位置

iOS View Hierarchy杀器-Reveal的使用_第2张图片
获取Reeal.frameworks位置1
iOS View Hierarchy杀器-Reveal的使用_第3张图片
显示frameworks位置

②将Reveal.framework拖至项目中,接下来添加引用库libz

iOS View Hierarchy杀器-Reveal的使用_第4张图片
2.png

③再在Build Settings中的Other Link flags添加-ObjC(注意大小写)就可以了,图示如下:

iOS View Hierarchy杀器-Reveal的使用_第5张图片
3.png

④添加测试代码

iOS View Hierarchy杀器-Reveal的使用_第6张图片
测试代码

⑤Xcode运行程序(如果是真机的话,需确保电脑跟手机的ip地址处于同一个网段,简而言之,连同一个wifi就可以了),切换到Reveal程序,此时会发现Reveal内没有任何反应,需再执行以下操作

iOS View Hierarchy杀器-Reveal的使用_第7张图片
关联设备


第二种使用场合,应用于应用商店下载的项目

①同第一种使用方法一样,找到Reveal.framework的位置

②首先在越狱设备上安装应用(以我安装的应用为例子),分别将Reveal.framework复制到越狱机的:/System/Library/Frameworks目录下,将libReveal.dylib复制到越狱机的:/Library/MobileSubstrate/DynamicLibraries下,打开终端,直接上代码:

iOS View Hierarchy杀器-Reveal的使用_第8张图片
文件拷贝代码

接着写一份plist文件命名为libReveal.plist,同样将该文件复制到越狱机:/Library/MobileSubstrate/DynamicLibraries文件夹下(指令同上),也可以直接从我的github下载https://github.com/zhaozhenbo/libReveal,在Bundles下新增一行(关于如何获取上架应用bundle ID的部分,请拉到文末,查看“拓展”),把你想看的应用bundle id 填上即可,文件样式如下:

iOS View Hierarchy杀器-Reveal的使用_第9张图片
libReveal.plist样式

③重启设备,打开plist文件内bundle ID对应的应用。就可以看到你想查看的应用布局了。


拓展

查看第三方应用bundle ID

之前在本人的上一篇文章“iOS逆向工程的探索与学习”,有提及由于iOS8.3系统之后(包括iOS8.3)苹果公司对应用文件共享进行了限制,过诸如iTools,PP助手等应用没法将越狱手机上的应用备份至电脑上,所以如果你的越狱手机系统>=iOS8.3,那么通过备份应用至电脑通过ipa名字得知应用bundle ID的做法显然不可取。下面介绍一种与之类似的简单方法:

①打开iTunes,搜索你要查看布局的app,下载

iOS View Hierarchy杀器-Reveal的使用_第10张图片
在iTunes上下载相关app

show in Finder

iOS View Hierarchy杀器-Reveal的使用_第11张图片
右击显示文件位置

③将应用的后缀名“.ipa”修改为“.zip”->保存->解压zip压缩包

iOS View Hierarchy杀器-Reveal的使用_第12张图片
解压压缩包

④打开解压后的文件夹->打开“.plist”文件->搜索bundle,之后所见即所得

iOS View Hierarchy杀器-Reveal的使用_第13张图片
获取bundle ID

非完整破解Reveal

以下方法并非一次破解终身无忧的破解方式,这种方法只是类似于30天到期了重新安装应用而已,不过,直接把数据文件干掉重新生成,可免去你安装应用的时间,前往路径,~/Library/Preferences/com.ittybittyapps.Reveal.plist,把这个plist文件干掉,然后再重启一下电脑即可,完整破解版请自行搜罗,我个人并不提倡一劳永逸的做法,如果你能通过自我学习之后破解相关软件,无论是对自己知识面的拓展还是技术的提升,都有极大好处,目前我也在积极学习相关技能,stay foolish,stay hungry~

验证砸壳后的应用能不能使用Reveal查看布局

使用Reveal查看砸壳应用效果图

iOS View Hierarchy杀器-Reveal的使用_第14张图片
显示异常

使用Reveal查看未砸壳应用效果图

显示正常

经过多次对比得知,砸壳后的应用貌似在使用Reveal查看布局界面时会经常无法显示。(这个论证只是通过一个应用砸壳与非砸壳对比下得出的,有不严谨的地方,大伙可自行尝试,进一步验证该结论的正确性

你可能感兴趣的:(iOS View Hierarchy杀器-Reveal的使用)