本文转自http://blog.csdn.net/cuibo1123/article/details/45694657

安装:

首先前往 http://revealapp.com/download/ 去下载文件,解压直接运行,就可以看到界面了。这里强烈建议把下载的Reveal拷贝到mac的“应用程序”里。

调试自己的APP

Reveal主要是用来调试自己的app的,不过有人研究出了怎么去看所有app的方法。现在xcode已经集成了界面分析工具,所以,用Reveal分析调试自己的app就变的不是那么重要了,感兴趣可以前往: http://support.revealapp.com/kb/getting-started/integrating-reveal-static-linking 。官网说的非常详细,这里就不在介绍了。

调试他人APP

越狱

调试他人app首先要把iphone越狱,关于怎么越狱,baidu一下即可,要注意的是,越狱过程中最好关闭“查找我的iphone功能”,并且将开机密码清除,否则可能会越狱不成功,至少我自己碰到过因为这个原因不能越狱的情况。

越狱完成后,通过Cydia(越狱后自动安装的一个软件源)安装OpenSSH和MobileSubstrate(现在已经改名叫:cydia substrate),注意Cydia第一次启动后需要更新软件源,所以可能搜索不到应用,这时候等一会,让Cydia更新完之后再搜索就行了,有点像ubuntu的apt-get update。

通过openSSH拷贝framework和dylib到越狱机

  1. scp -r /Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/Reveal.framework root@192.168.0.X:/System/Library/Frameworks
  2. scp /Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/libReveal.dylib root@192.168.0.X:/Library/MobileSubstrate/DynamicLibraries

拷贝时注意Reveal的路径是否正确,还有iphone的ip地址也要正确才行。openSSH的root账户默认密码是:alpine

编辑libReveal.plist

再iphone的 /Library/MobileSubstrate/DynamicLibraries/ 目录下创建文件libReveal.plist,当然也可以在电脑上创建编辑后拷贝到iphone上,方法同上面拷贝framework。

libReveal.plist内容如下(这里已appStore为例),Bundles里写要分析的app的Bundle,可以制定多个,只要写多行"Bundles =..."就行了:

  1. {
  2. Filter = {
  3. Bundles = ("com.apple.AppStore");
  4. };
  5. }

关于Bundle,可以用pp助手等查看app文件夹,在应用目录下的iTunesMetadata.plist文件中,softwareVersionBundleId一项就是了。不过我的pp助手不能单独导出这个文件,需要把整个软件都导出才能查看,原因不明。

重新启动越狱的iphone

然后就可以打开Reveal看别人的app怎么布局的了。注意,iphone和安装Reveal的机器一定要在同一网络下。

下面是QQ(信息已涂抹):

iOS使用Reveal分析他人app界面的更多相关文章

  1. iOS安全攻防(三):使用Reveal分析他人app

    使用Reveal分析他人app 准备工作 1)已越狱的设备,而且已安装了OpenSSH,MobileSubstrate等有用工具(Cydia源里安装) 2)本地已安装了Reveal 操作步骤 1)拷贝 ...

  2. 用Reveal分析第三方App的UI

    文章出自:听云博客 Reveal简介: 这是个神奇的工具,它能常透彻地分析个App的UI结构. 这个工具包括两部分,部分是在PC上运行的一个独立应用,即Reveal.app,另一部分代码在你要分析的某 ...

  3. iOS越狱系列(一):使用Reveal分析APP

    TOOLS 1.已越狱的设备,并且已安装了OpenSSH,MobileSubstrate等实用工具 Cydia源/Telesphoreo里有 里面有个包 可以基本集合所有开发工具提供库 2.mac o ...

  4. Reveal分析IOS界面,plist文件读取

    Reveal分析IOS界面,需要得到app的 softwareVersionBundleId上传到iphone中 , 而IOS8的iTunesMetadata.plist (设备路径/var/mobi ...

  5. Reveal UI 分析工具分析手机 App

    上篇文章介绍了: Reveal UI 分析工具简单使用 这里介绍如何使用 Reveal UI 分析工具来进行手机 App UI 界面的分析. 前提准备: (1)已安装 Reveal 的 Mac (2) ...

  6. ios 利用Reveal来调试界面1 --模拟器(步骤详解)

    Reveal是一个程序界面调试工具,可以调试iOS apps和tvOS apps.使用Reveal,我们可以在开发时动态地查看和修改应用程序的界面.避免每次修改UI的时候都要重新运行程序.接下来按照规 ...

  7. 使用Reveal来查看别人的APP界面+白苹果不刷机解决方式

    Reveal这个强大的界面调试工具.能够实时查看.改动view的属性,大体上实现了iOS程序猿梦寐以求的功能.比方,有时候我们加入了一个view,可是那个view死活不显示出来,这时候祭出Reveal ...

  8. IOS与Android APP界面设计规范要点

    IOS篇 一.尺寸及分辨率 iPhone界面尺寸:320*480.640*960.640*1136 iPhone6:4.7英寸(1334×750),iPhone6 Plus:5.5英寸(1920×10 ...

  9. ios 利用Reveal来调试界面2--真机调试(步骤详解)

    使用真机调试我们的App界面,如果你的真机是没有越狱的设备,那么使用Reveal来调试UI的步骤是最麻烦的.

随机推荐

  1. JMeter中的HTTPS套接字错误

    Apache JMeter对启用SSL的应用程序执行性能和/或负载测试时,SSL套接字错误可能是经常遇到的麻烦,严重阻碍了您的测试工作.本文重点介绍如何通过相应地配置和调优JMeter来克服这些与连接 ...

  2. POJ1129(贪心)

    笔者休息娱乐.贪心即可,爱怎么暴力怎么暴力.莽WA,改了几下算法发现是输出中二了-- int T, color[26], tot; bool adj[26][26]; string s; void g ...

  3. BZOJ1102(搜索)

    随便写一下的搜索,别的OJ深搜就过了,强大的BZOJ成功栈溢出RE了我并使我屈服地用广搜过掉,第一行手动开栈惨遭无视. 广搜: #pragma comment(linker, "/STACK ...

  4. Count on a tree II SPOJ - COT2 && bzoj1086 王室联邦 && bzoj2589

    https://cn.vjudge.net/problem/SPOJ-COT2 这个是树上莫队模版啊.. 树上莫队有两种,第一种就是括号序莫队 设节点i在括号序中首次出现位置为pl[i] 那么路径(i ...

  5. 复习线程——状态和几个Thread方法

    一.线程的状态 (参考文章:https://blog.csdn.net/a58220655/article/details/76695142) 状态介绍 新建(new):处于该状态的时间很短暂.已被分 ...

  6. AJPFX关于子类父类中的构造

    1.子父类中的构造函数不存在重写,因为子父类的构造函数名字不一样(重写要求子父类的方法名字一模一样,包括参数列表)2.子类创建对象时会先运行父类的构造函数再运行子类的构造函数.因为每个子类的构造函数的 ...

  7. 流行的9个Java框架介绍: 优点、缺点等等

    流行的9个Java框架介绍: 优点.缺点等等 在 2018年,Java仍然是世界上最流行的编程语言.它拥有一个巨大的生态系统,在全世界有超过900万Java开发人员.虽然Java不是最直接的语言,但是 ...

  8. ES-什么是elasticsearch

    前言 观今宜鉴古,无古不成今.在学习elasticsearch之前,我们要知道,elasticsearch是什么?为什么要学习elasticsearch?以及用它能干什么? 关于elasticsear ...

  9. input type=file 选择图片并且实现预览效果

    通过<input />标签,给它指定type类型为file,可提供文件上传: accept:可选择上传类型,如:只要传图片,且不限制图片格式,为image/*: multiple:规定是否 ...

  10. 高性能Javascript总结

    一.加载和运行 Javascript代码执行会阻塞其他浏览器处理过程.充分利用webpack或gulp工具对文件打包压缩,减少js文件的数量,从而减少http请求的次数,以提高网页应用的实际性能. 二 ...