您的位置:首页 > 移动开发

iOS使用Reveal分析他人app界面

2015-05-13 16:23 671 查看
不确定界面架构是否合理?最简单的办法就是看看别人是怎么做的,比如QQ。
方法也比较简单,就是一个工具:Reveal。下面说说怎么用。

测试环境:mac osx 10.10 / xcode 6.3 / ios7.1.2 / Reveal 1.5.1

安装:
首先前往 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到越狱机
scp -r /Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/Reveal.framework root@192.168.0.X:/System/Library/Frameworks
    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 =..."就行了:

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

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

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

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

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: