最新Reveal安裝、使用和調(diào)試

Reveal安裝:
  1. 下載附件中的Reveal: Reveal4-8796 pwd: fjvc
  2. 將附件包里面的Reveal48796[Cr]中的Reveal.app, 直接拖拽到應用程序目錄(/Applications), 不要更改應用名稱;
  3. 將.lldbinit拖到用戶跟目錄下面即可; 如(/Users/Johnson/.lldbinit) ;

如果打開失敗, 可直接安裝原版的Reveal, 然后RevealPatcher破解即可;
lldbinit為可選項, 添加lldb命令別名;

使用方式:
方式一:
  1. 打開Reveal, 點擊菜單Help->Show Reveal Library in Finder->iOS Library, 將目錄中的Reveal.framework添加到工程中(附近中也有);


    image.png
  2. 打開工程, 選擇target->General->Enbedded Binaries->Add->Reveal.framework;


    image.png

    此時會在Linked Frameworks and Libraries中會有兩個Reveal.framework, 不用管它;

  3. 運行工程, 運行成功后, 打開Reveal即可選擇要查看的App;
方式二:
  1. 直接運行工程, 成功后開啟斷點;


    image.png
  2. lldb中輸入start, 按enter鍵. 開啟后會輸出 INFO: Reveal Server started (Protocol Version 32), 打開Reveal;


    image.png

    2.1 與之對應的stop, 輸出:INFO: Reveal Server stopped, 打開Reveal會看到剛剛調(diào)試App消失了;

  3. start和stop是執(zhí)行l(wèi)ldbinit之后才有的命令行, 如果出錯請查看用戶目錄下是否有.lldbinit文件;
方式三:
  1. 打開工程, 工程左側導航選擇BreakPoint(?+7);

  2. 左下角點擊加號, 選擇Sysmbolic Breakpoint...;


    image.png
  3. 編輯該Breakpoint, 輸入Symbol: UIApplicationMain;

  4. 選擇下面的+號, 添加Action, 設置為Debugger Command;

  5. 將以下代碼輸入到文本框中:

    expr (Class)NSClassFromString(@"IBARevealLoader") == nil ? (void     *)dlopen("/Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/RevealServer.framework/RevealServer", 0x2) : ((void*)0)
    
image.png
  1. 運行工程, 成功后有斷點卡住, 直接跳過斷點. 此時會在Console中打印:INFO: Reveal Server started (Protocol Version 32).
    7.打開Reveal查看即可;
方式四:

使用Cocoapods:

  target 'Xx' do
  pod 'Reveal-SDK', :configurations => ['Debug']
  end

此方式和方式一差不多, 不過自動在Release版本去除Reveal. ps: 我自己使用前幾種方式后, 再使用Cocoapods, 始終無法加載RevealServer. 新建工程是可以的;

Reveal使用點:
image.png

此位置和xcode差不多, 可運行時修改; 其它的隨便點, 隨便玩.

Reveal在軟件中內(nèi)置使用文檔

打開Reveal, 點擊菜單Help->Show Reveal Library in Finder->iOS Library, 在Finder里面選擇Documentation, 打開Reveal Integration Guide.html查看.

幾種方式的優(yōu)缺點:

方式一需要手動引入額外的包, 對于增加安裝包的大小, 并且上傳時如果忘記去掉, 審核會被拒絕;
方式二最為方便, 需要使用時開啟lldb斷點即可; (前提是機器上已安裝好Reveal環(huán)境);
方式三需要額外的配置, 不利于多人開發(fā). (或許誰覺得這個斷點沒用直接給你刪了 - -);

關于方式二: 新的reveal直接集成了命令行, 比現(xiàn)在的方式更簡單. 如果上面方式二不可用, 可直接使用此方式:Reveal LLDB Commands

使用注意:
  1. 新版Reveal最低支持iOS8, 如果版本兼容太低, 會直接編譯不過(臨時調(diào)試Deployment target >=8.0即可);
  2. 破解不完整, 真機提示升級.(偶爾可以調(diào)試,如果找到方法,請告訴我- -), 模擬器無任何問題;
  3. 調(diào)試時請保持電腦和設備在同一wifi或者使用usb線連接, (如果真機可調(diào)的話...);

PS:如果是越獄機,只需要進入Cydia安裝RevealLoader插件即可,然后把當前使用版本的libReveal.dylib拷貝到手機Library/RHRevealLoader/libReveal.dylib。使用只需在設置中打開RevealLoader,添加想查看的程序即可。(如果要查看的程序已打開,先殺掉再進,否則dylib插件無法加載)
實用請支持正版傳送門, 謝謝閱讀.

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容