iOS界面調試工具 Reveal

作用

  • Reveal是一個iOS程序界面調試工具。使用Reveal,我們可以在iOS開發時動態地查看和修改應用程序的界面。

  • 對于動態或復雜的交互界面,手寫UI是不可避免的。通過Reveal,我們可以方便地調試和修改應用界面,免去了每次修改代碼后重新啟動的痛苦

Reveal簡介

  • Reveal (http://revealapp.com/) 是一個界面調試工具。使用Reveal,我們可以在iOS開發時動態地查看和修改應用程序的界面。它類似Chrome的“審查元素”功能,我們不但可以在運行時看到iOS程序的界面層級關系,還可以實時地修改程序界面,不用重新運行程序就可以看到修改之后的效果

  • 在使用時,我們將Reveal連接上模擬器或真機上正在運行的iOS程序,然后就可以查看和調試iOS程序的界面

Reveal的使用

  • Reveal官方介紹了好幾種辦法使Reveal連接模擬器,都需要修改工程文件。但如果修改了工程文件,就需要參與項目開發的所有人都裝有Reveal,這其實是相當不友好的。本節要介紹一種不修改任何工程文件的辦法,在實際使用中,這種辦法最簡單方便。該方法的步驟如下

1.首先打開Terminal,輸入 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*)
command alias reveal_start expr (void)[(NSNotificationCenter*)[NSNotificationCenter defaultCenter] postNotificationName:@"IBARevealRequestStart" object:nil];[(NSBundle*)[NSBundle mainBundle] pathForResource:@"libReveal" ofType:@"dylib"] cStringUsingEncoding:0x4], 0x2);
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調試功能

  • 接下來,我們在AppDelegate類的 application: didFinishLaunchingWithOptions:
    方法中,作如下3步操作(如下圖所示):
    下面詳細介紹請點擊鏈接

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容