Reveal的使用--整理自唐巧的《iOS开发进阶》

来源:互联网 发布:医学英文单词软件 编辑:程序博客网 时间:2024/06/05 15:49

1.下载一个正版的reveal来安装。

2.打开终端,输入vim ~/.lldbinit创建一个名为.lldbinit的文件,然后将如下内容输入文件中

command alias reveal_load_sim expr (void*)dlopen("/Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/libReveal.dylib", 0x2);

command alias reveal_load_dev expr (void*)dlopen([(NSString*)[(NSBundle*)[NSBundle mainBundle]               pathForResource:@"libReveal" ofType:@"dylib"] cStringUsingEncoding:0x4], 0x2);

command alias reveal_start expr (void)[(NSNotificationCenter*)[NSNotificationCenter defaultCenter]           postNotificationName:@"IBARevealRequestStart" object:nil];

command alias reveal_stop expr (void)[(NSNotificationCenter*)[NSNotificationCenter defaultCenter]            postNotificationName:@"IBARevealRequestStop" object:nil];

该步骤其实是为lldb设置4个别名,这样方便以后操作,这4个别名的意义如下:

1)reveal_load_sim 模拟器加载reveal调试用的动态链接库。

2)reveal_load_dev 真机加载reveal调试用的动态链接库。

3)reveal_start 启动reveal调试功能。

4)reveal_stop 结束reveal调试功能。


3.在AppDelegate类的application:(UIApplication *)application didFinishLaunchingWithOptions:方法中接入下面3个操作,如下如

1) 增加一个断点,右击断点,选择"Edit BreakPoint".

2) 单击"Action"右边的"Add Action",然后输入"reveal_load_sim".

3) 勾选上"Options"上的“Automatically continue after evaluating actions”选项。




之后运行我们运行模拟器,打开reveal,就可以在reveal界面左上角看到有模拟器可以选择调试,选择它,则可以在reveal中查看调试iOS程序的界面了。


4.用revea连接真机(补充:似乎现在这个方法已经不生效了)

要用reveal连接真机调试,我们需要先把reveal的动态链接库上传到真机上。由于iOS设备有沙盒存在,所以我们只能将reveal的动态链接库添加到工程里。

1)选择reveal菜单栏的"Help"->"Show Reveal library in Finder"选项,可以在Finder中找到Reveal的动态链接库libReveal.dylib.

2)将该文件拖到工程里,Xcode默认将libReveal.dylib设置到"Link Binary With Libraries",我们需要进行调整,将"Link Binary With Libraries"中的libReveal.dylib删除,再将其添加到"Copy Bundle Resources"下面。

3)之后用Reveal连接真机的方式和连接模拟器的方式类似,我们只需把上面提到的断点Action的内容从reveal_load_sim改成reveal_load_dev即可。



补充:1.关于正版reveal的使用

reveal时收费的,所以。。。,它有30天的试用期,到30天过期后,到~/Library/Preferences/com.ittybittyapps.Reveal.plist,把这个plist文件删除,然后重启电脑,就可以了。虽然麻烦点儿,将就着使吧。

2.在打包上传的时候libReveal.dylib是需要删除的,不然会报错。


1 1
原创粉丝点击