Reveal 的安装和使用

Reveal 是iOS 下查看页面布局的神器。今天下午我写一个页面的时候加了一个view 到self.view上的时候,死活没见出来,用的iPhone 6的模拟器,用po 命令打印出来的frame 是{0,617,375,50},貌似也没错的啊,改颜色也没效果,后面用Reveal 一看,发现那个页面已经在屏幕以下了。这里写图片描述
红色这个就是我当时想放在绿色的地方,一看就是忘记减去顶部的64个pix了,做了这么久的开发,真是被自己蠢哭了。下面说一下怎么安装和使用这个神器。

1、在官网上下载这个App,有30天得试用期。个人购买的价钱现在是89美元。
2、打开Reveal,选择help 然后选择Show Reveal Library in Finder。
3、对于只是想分析自己的工程的App ,那么就把这个framework 拖入到自己的工程中,并选择copy to group if need 选项。确保有

Reveal.Framework
CFNetwork.framework
QuartzCore.framework
CoreGraphics.framework

这四个框架。保证设备或者模拟器是iOS 8 以上的。
4、对于想分析别人的App 的页面布局要有以下步骤。
(1).一台越狱机器,我的是iOS 版本是8.4的iPhone 4s。将这台机子越狱,我用的是太极越狱,当然你如果是其他版本的,那可以使用盘古团队的越狱。越狱完了以后,在Cydia 上安装OpenSSH 和MobileSubstrate。前者是用来使用终端登陆上去到手机并传输文件的,后者就是用来分析别人的App 框架用的。
(2)将 libReveal.dylib 拷贝到桌面,然后同时创建libReveal.plist,输入想分析的 App 的 BundleId,最好一次输入一个,那怎么得到别人的BundleId呢,如果你用itools 或者ifunbox 可以在越狱手机查得到的话,那就用这个方法,其实还有一个通过程序读取手机上的所有app 的bundle id的,程序如下:

  Class LSApplicationWorkspace_class = objc_getClass("LSApplicationWorkspace");
    NSObject* workspace = [LSApplicationWorkspace_class performSelector:@selector(defaultWorkspace)];
    NSLog(@"apps: %@", [workspace performSelector:@selector(allApplications)]);

得到bundleId 后呢就往新建的libReveal.plist输入得到的你想分析的id,格式如下:

{      
    Filter = {          
        Bundles = (
            "com.apple.AppStore"
        );    
    }; 
}

(3)、将这个Reveal 的动态库和plist 文件上传到越狱机子上,在mac 终端上使用刚才的openssh命令(确保mac 和iPhone 在同一个wifi 下面):

scp Desktop/libReveal.dylib root@192.168.1.111:/Library/MobileSubstrate/DynamicLibraries
 scp Desktop/libReveal.plist root@192.168.1.111:/Library/MobileSubstrate/DynamicLibraries

这个xxx.xxx.xx.xx就是你的手机的ip。要输入密码的话那就是alpine
打开要研究的app,然后打开Reveal,使用右上角的刷新按钮,即可开始分析了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值