Reveal的使用及破解方法
Reveal的使用其实真的很简单,就如第一张镇楼图的效果一样。中间是3D可视化当前APP页面的视图,左侧则是这些UI元素和层次结构,而右侧则是View的属性,你可以修改View的颜色、frame等等,并且效果还是及时渲染到模拟器上的。
Reveal集成:LLDB集成
LLDB集成的优势就是在于不用担心打包会把Reveal的framework也打包进去的问题。而且本地配置好了,只要在这台机器上任何项目都通用。最最最主要的一点就是,高bigger。
使用LLDB命令集成其实也很简单,大体分为如下两步。
第一步:点击pause program execution,暂停app。(如下图)
第二步:依次输入两条命令即可,分别如下:
expr (Class)NSClassFromString(@"IBARevealLoader") == nil ? (void *)dlopen("/Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/libReveal.dylib", 0x2) : ((void*)0)
ps:/Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/libReveal.dylib这个地址为绝对路径,我的Reveal是存放于application目录下的,所以路径就是/Applications/Reveal.app/.....
这里会有人有问题,我已经安装了Reveal但是在应用程序里面找不到,所以这个路径也是不存在的怎么办?把你的这个Reveal直接拖拽到应用程序里面就行。
expr (void)[(NSNotificationCenter*)[NSNotificationCenter defaultCenter] postNotificationName:@"IBARevealRequestStart" object:nil];
两条命令顺利的话,控制台则会打印INFO: Reveal Server started (Protocol Version 25).这条信息。(如下图)
ps:如果最后未能正常输出INFO: Reveal Server started,那你就要好好检查一下第一条命令里的dlopen里包含的路径是否正确了。
最后,你在点击continue按钮或者在控制台里继续输入c字符然后回车,让程序结束暂停即可。
现在,你在打开你的Reveal,在你的左上角点击No Connection,瞅瞅,是否有你的app啦。接下来你就好好的享受Reveal带给你的快感吧。。。
.lldbinit里设置别名
但是,这还没有结束尼。每次需要Reveal来审查UI的时候都要输入这两条看着如此蛋疼的命令。这,不是要我老命嘛? so... 幸运的是我们可以在~/目录下的.lldbinit文件里为我们的LLDB命令添加别名。
首先,简单科普一下吧。.lldbinit是一个隐藏文件,貌似默认是没有的。而Xcode每次启动的时候,则都会去~/.lldbinit这个目录寻找这个文件里的LLDB命令。所以我们可以在这个文件里进行一些命令的初始化设置或者设置别名等等(本篇不做这方面介绍)。
现在,我们打开终端,在终端里输入touch ~/.lldbinit命令来进行创建。然后在输入open ~/.lldbinit命令。则就会以文本编辑器打开此文件。然后再把如下字符复制到文本编辑器里即可:
command alias zxp_reveal_load_sim expr (Class)NSClassFromString(@"IBARevealLoader") == nil ? (void *)dlopen("/Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/libReveal.dylib", 0x2) : ((void*)0)
command alias zxp_reveal_start expr (void)[(NSNotificationCenter*)[NSNotificationCenter defaultCenter] postNotificationName:@"IBARevealRequestStart" object:nil];
command alias 其格式为:command alias 别名 LLDB命令,因此如上zxp_reveal_start和zxp_reveal_load_sim就是我设置的别名。你们也可以替换成你们自己喜欢的名字
然后,现在在按照如上LLDB集成的步骤,运行项目,暂停app,这时候你在输入zxp_reveal_load_sim然后在输入zxp_reveal_start即可在Reveal里审查你的UI元素了。(如下图)
ps:当你改完~/.lldbinit文件后,你的这个别人在控制台任然用不了,你需要重启xCode重新加载一次这个文件才会有效,有效的别名在控制台输入的时候会有提示
Reveal破解方法一:
由于Reveal是收费的,所以我们得要用点手段才行。正所谓上有政策下有对策嘛。其实也很简单,直接把~/Library/Preferences/com.ittybittyapps.Reveal.plist这个路径下的这个文件给干掉,然后在重启一下电脑即可。但这并不是完全破解,而是一直循环30天试用。等30天试用完了,在把这个文件干掉,然后在重启电脑即可。当然~/Library/Preferences/这个目录下的文件较多,现在你打开你的终端,然后输入rm ~/Library/Preferences/com.ittybittyapps.Reveal.plist这条命令即可删除。然后继续重启你的电脑吧。这个破解方法简单粗暴也实用,如果童鞋们有其他更好的方法或者有完全破解不需要循环30天的方法,还望多指点我。
Reveal破解方法二:
1,从https://revealapp.com下载Reveal并安装;
2,下载破解文件https://pan.baidu.com/share/init?shareid=3490432084&uk=2620796126提取密码:7x48;
3,破解
1.安装原版并运行一次 -- 假设安装到 /Applications/Reveal.app/
2.打开/Applications/Reveal.app/Contents/MacOS/Reveal 改名为 Reveal_
3.将附件复制进来
4.启动主程序即可!
主要参考http://www.jianshu.com/p/51c539f61ab0 稍添加一些内容修改及添加
如果想用Reveal查看真机任意APP的结构可以参考http://www.jianshu.com/p/4dc8f94ca27c(设备需要越狱)
Reveal的使用及破解方法的更多相关文章
- iOS分析UI利器——Reveal及简单破解方法
Reveal作为分析APP UI的利器确实非常好用,用来查看任意UI布局也很方便 一.模拟器进行分析 1.打开Reveal(http://revealapp.com下载) 2.打开Xcode 3.Re ...
- UI调试神器 for ios:Reveal的使用与破解
aaarticlea/jpeg;base64,/9j/4AAQSkZJRgABAQEAkACQAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aH
- Photosohp 2017 已经发布!(下载地址及破解方法在文章底部)
Adobe Creative Cloud 软件于2016.11.2 全面更新,Adobe Creative Cloud 2017 震撼登场 全新的 2017版本,包含 Photoshop.Illust ...
- 最新WingIDE注册破解方法 【转】
WingIDE是Python程序语言设计的集成开发环境,具有语法标签高亮显示,命令自动完成和函数跳转列表等非常强大的功能.本文主要介绍WingIDE 5安装及注册破解方法. 注:本教程在python ...
- Adobe Flash Builder 4.7破解方法(绝对可用)
Flash Builder4.7 破解方法的实践 建议:作为草根一级,买不起正版,只能先拿破解版练练手了,如果商业的话,请用正版. 具体步骤如下: 1.到Adobe官网下载FlashBuilder ...
- CKFinder_AspDotNet_2.4 破解方法 去版权
CKFinder是一个比较好用的Web端文件管理器,虽然UI不是很好看,但是因为能搞到源码,所以比起网上那些只有付费之后才能下载到源码的Web端文件管理器要好许多,至少你可以在确定该控件是否能用在你的 ...
- Myeclipse 2015 stable 2.0 完美破解方法
2015-08-21 以前写了一篇<Myeclipse 2015 stable 1.0 完美破解方法>,现 在跟新一下Myeclipse 2015 stable 2.0 破解方法,此方法 ...
- XP/Win7下QTP11循环试用30天的破解方法
XP/Win7下QTP11循环试用30天的破解方法. XP下:1.找到以下路径:C:\Documents and Settings\All Users\Application Data\SafeNet ...
- IAR EW8051-8.10.4安装及破解方法
第一步:获取破解license 1: 点击桌面左下角“开始”按钮,找到cmd.exe,右键创建cmd.exe 快捷方式到桌面: ————如果是windows7 ,请右键点击cmd.exe 快捷图标,点 ...
随机推荐
- c++ 使用shell命令
#include <iostream> #include <stdio.h> #include <vector> #include <unistd.h> ...
- phoenix 索引修复-基本流程
索引修复基本流程
- Maven(一)maven环境搭建
1.下载maven安装文件 https://maven.apache.org/download.cgi#,根据自己的需要下载对应版本 2. 配置maven环境变量,和java环境变量配置方式类似. ...
- LPC2478调试___ads常见错误分析
进行ADS外部RAM进行仿真调试过程中,出现常见错误“entry point lies outside the image" 原因为程序空间超出范围,需要修改一个参数. 解决方法:首先在Z ...
- JVM 内存的那些事
转自:http://blog.jobbole.com/104863/ 对于Java程序员你来说,在虚拟机内存管理的帮助下,不需要为每个new对象都匹配free操作,内存泄露和内存溢出等问题也不太容易出 ...
- web----test-----selenium
selenium ide 安装就自行百度吧. 对百度进行一个简单的录制. 1. 在Firefox浏览器打开百度页面. 2.在Firefox浏览器菜单栏中,选择“工具” ,选择selenium IDE ...
- Linux CentOS 7通过yum命令安装Mono4.0.1
前言 上一篇中提到的快照方式安装Mono,该方式并不稳定,需要做各种配置,各种修改才能与jexus搭配运行. 一.安装源 rpm --import "http://keyserver.ubu ...
- 27. Oracle 10g下emctl start dbconsole 报错:OC4J Configuration issue 问题解决
(dbconsole配置好外面的sqlplus才能连的上服务器上的数据库) 采取重新配置emctl 的方法来解决 [oracle@guohuias3 oracle]$ emca -config dbc ...
- Android常用客户端测试工具
Emmagee GT iTest PowerTutor 网速限制 Root Explorer ApkEditor 陆续添加...
- html focus事件小学问
focus事件千万不要有alert方法,不然在有些浏览器会进入死循环的.例如:$('#test').focus(function(){ alert('dead loop'); }); 在chrome下 ...