一.Reveal簡介
Reveal是一個界面調試工具。使用Reveal,咱們能夠在iOS開發時動態地查看和修改應用程序的界面。它相似Chrome的「審查元素」功能,咱們不但能夠在運行時看到iOS程序的界面層級關係,還能夠實時地修改程序界面,不用從新運行程序就能夠看到修改以後的效果。
在使用時,咱們將Reveal鏈接上模擬器或真機上正在運行的iOS程序,而後就能夠查看和調試iOS程序的界面。git
二.Reveal怎樣在Xcode中使用
vim
目前我知道有兩種使用的途徑app
第一種使用的方法svn
1.打開Xcode和Reveal,將Reveal中的Reveal.framework拖到當前的工程當中工具
2.在工程中引用libz.tbd庫post
3.在工程中添加-ObjClua
4.最後運行工程,選擇當前的工程就能夠調試
第二種使用的方法code
1.首先打開Terminal,輸入vim ~/.lldbinit建立一個名爲.lldbinit的文件blog
2.輸入
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];
3.保存並退出文件 按下esc 輸入 ":wq!"
該步驟實際上是爲lldb設置了4個別名,這4個別名意義以下:
1reveal_load_sim爲模擬器加載reveal調試用的動態連接庫
2reveal_load_dev爲真機加載reveal調試用的動態連接庫
3reveal_start啓動reveal調試功能
4reveal_stop 結束reveal調試功能
5.而後,在AppDelegate類的application: didFinishLaunchingWithOptions:方法中,做以下操做
1添加斷點,選擇「Edit Breakpoint」。
2點擊」Action」項邊右的」Add Action」,而後輸入「reveal_load_sim」
3勾選上Options上的」Automatically continue after evaluating」選項。
此時運行工程就能夠在Reveal中查看了!
兩種方法的區別第一種方法須要每次都在每一個工程中做此操做,比較麻煩,而且在公司中使用svn或者git時要注意不能提交此修改,其實這一點是很痛苦的,由於當操做完第一種方法後svn.git上工程是有變換的,咱們修改.plist或者增刪文件工程也是有變化的因此致使沒法去提交project.pbxproj修改,爲了不這種狀況的發生你能夠Check Out 兩份代碼一份導入Reveal一份不導入修改或者建議使用第二種方法!