原創(chuàng)作品,允許轉(zhuǎn)載,轉(zhuǎn)載時(shí)請(qǐng)務(wù)必以超鏈接形式標(biāo)明文章原始出處 、作者信息和本聲明。否則將追究法律責(zé)任。

昨天在拜讀唐巧的《iOS開(kāi)發(fā)進(jìn)階》,書(shū)里介紹了界面調(diào)試工具Reveal,動(dòng)起手來(lái),開(kāi)始安裝,其實(shí)大部分已經(jīng)在書(shū)中有介紹,這里就介紹一些問(wèn)題和解決方法。
1. 下載
首先去Reveal官網(wǎng)下載最新的Reveal ,官網(wǎng)地址?revealapp.com,然后發(fā)現(xiàn)試用期30天,30天當(dāng)然不能滿足我們對(duì)這款軟件的熱愛(ài)了,購(gòu)買需要89刀,這都趕上蘋果開(kāi)發(fā)者賬號(hào)了,不過(guò)沒(méi)關(guān)系,我們?cè)谔斐?,自然有辦法去應(yīng)對(duì)。
2.破解
雖然我們要支持正版軟件,但是對(duì)于我們對(duì)學(xué)術(shù)的熱愛(ài),破解一下也無(wú)妨。
破解方法1:
只需要打開(kāi)
~/Library/Preferences/com.ittybittyapps.Reveal.plist
把IBAApplicationPersistenceData這一項(xiàng)刪除就是了。
然后測(cè)試沒(méi)有成功,再次打開(kāi)軟件還是彈出試用提示,繼續(xù)嘗試,用CleanMyMac打開(kāi)發(fā)現(xiàn)有文件存在,刪掉后重復(fù)上面的步驟,再次打開(kāi)Reveal,OK成功,不過(guò)在后上角看到還是有試用小提示,時(shí)間又變成30天,總來(lái)說(shuō)這個(gè)方法只能延長(zhǎng)時(shí)間,個(gè)人不推薦。
破解方法2:(推薦)
破解工具下載地址:http://pan.baidu.com/s/1jHbDgbW
使用說(shuō)明:
1.安裝原版并運(yùn)行一次 -- 假設(shè)安裝到 /Applications/Reveal.app/
2.打開(kāi)/Applications/Reveal.app/Contents/MacOS/Reveal (或者右鍵顯示包內(nèi)容)改名為 Reveal_
3.將附件復(fù)制進(jìn)來(lái)
4.啟動(dòng)主程序即可
此時(shí),你會(huì)發(fā)現(xiàn)30天的試用期沒(méi)有了!
3.安裝
安裝過(guò)程就可以完全根據(jù)唐巧大大的描述進(jìn)行就可以了
首先配置環(huán)境:
1、打開(kāi)命令窗口,在根目錄下創(chuàng)建一個(gè).lldbinit文件。輸入下列命令,后回車
vim ~/.lldbinit
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];
(按ESC退出,輸入":wq"保存)
以上是四句命令,命令的意思是,給lldb設(shè)置了4個(gè)別名,這四個(gè)別名的意義是:
reveal_load_sim:模擬器加載reveal時(shí)調(diào)用的動(dòng)態(tài)鏈接庫(kù)
reveal_load_dev:真機(jī)加載reveal時(shí)調(diào)用的動(dòng)態(tài)鏈接庫(kù)
reveal_start:?jiǎn)?dòng)reveal的調(diào)試功能
reveal_stop:關(guān)閉reveal的調(diào)試功能
在輸入完這些命令后,輸入以下命令,按一下回車就保存并退出編輯模式了。
3、在工程中配置reveal鏈接到模擬器
定位到AppDelegate類中的`application:didFinishLaunchingWithOptions:`方法,進(jìn)行以下三個(gè)步驟:
增加一個(gè)斷點(diǎn),右鍵單擊斷點(diǎn),選擇`Edit Breakpoint`
單擊`Action`,然后輸入`reveal_load_sim`
勾選上`Options`上的 `Automatically continue after evaluating`

話說(shuō)這樣重啟項(xiàng)目,在Reveal里就可以跟模擬器進(jìn)行連接了。
但是運(yùn)行了一下,發(fā)現(xiàn)還是連接不了,不知道原因,后來(lái)查了一下,才知道現(xiàn)在從官網(wǎng)下載下來(lái)的1.6.x版本都是直接打開(kāi)就能運(yùn)行,這樣是無(wú)法通過(guò)這種模式連接到模擬器的。解決辦法就是將下載下來(lái)的應(yīng)用拖到Mac里應(yīng)用程序里就行。

這時(shí)候再重啟,刷新,發(fā)現(xiàn)已經(jīng)和模擬器連接上了。
暫時(shí)感受一下吧。