Reveal是一款調試iOS程序UI界面的工具,使用它可以查看各個界面的視圖層級,在解決界面顯示問題時非常有用。除了可以用來分析自己的App以為,它還可以用來查看其他App的布局,這在學習時非常有用。本篇文章就來說一說如何使用Reveal分析學習任意App。
前提條件
- "越獄"的iPhone
- 良好的網絡環境, 跟網絡有點關系, 如果在下面第二步連接iPhone失敗的話, 請嘗試檢查網絡或者更換網絡.
步驟
1、在iPhone上安裝OpenSSH
- 打開iPhone上的Cydia.
- 選擇右下角的搜索,輸入openSSH.
- 在搜索到的結果中選擇OpenSSH.
- 點擊屏幕右上角的安裝.
2、測試Mac是否能連接iPhone
ssh [email protected]
- 等待一會後,輸入密碼,默認是alpine(這個密碼可以改,方法自行搜索,建議不要改)
- 連接成功後,就可以管理iPhone上的文件了。
- 輸入exit退出(咱們這裡只是測試一下能不能連上iPhone,具體操作還得在Mac裡進行)
3、准備上傳文件
- 打開Reveal, 點擊菜單欄上的Help, 選擇Show Reveal Library in Finder
- 將libReveal.dylib拷貝到桌面,方便操作
- 在桌面創建libReveal.plist,輸入你喜歡的App的BundleId,可以多個,比如AppStore(其實不指定這個也可以, 能分析所有的App, 但是機器會慢到你無法想象, 開機白蘋果啥的, 建議還是指定分析App比較好)
{
Filter = {
Bundles = ("com.apple.AppStore");
};
}
4、上傳文件到iPhone(終端操作)
- 上傳libReveal.dylib到iPhone(IP是iPhone上的IP)
scp Desktop/libReveal.dylib [email protected]:/Library/MobileSubstrate/DynamicLibraries
- 上傳libReveal.plist到iPhone(IP是iPhone上的IP)
scp Desktop/libReveal.plist [email protected]:/Library/MobileSubstrate/DynamicLibraries
5、重啟iPhone(關機, 開機)
如果你成功的完成了上面的步驟, 並且iPhone成功重啟, OK, 下面就可以分析App了.
- 打開Reveal, 打開iPhone上你指定的App, 在Reveal左上方選擇App
- 切換頁面後, 可以點擊Reveal右上角的刷新按鈕
AppStore
Done!
Reveal App下載:
http://revealapp.com/
30天到期後再次試用的方法:
打開 ~/Library/Preferences/com.ittybittyapps.Reveal.plist
把IBAApplicationPersistenceData這一項刪除
附:越獄設備上試用Reveal查看任意app的方法:
http://zhuanlan.zhihu.com/iOSRe/19646016