Reveal UI 分析工具分析手機 App,revealui

來源:互聯網
上載者:User

Reveal UI 分析工具分析手機 App,revealui

上篇文章介紹了: Reveal UI 分析工具簡單使用

這裡介紹如何使用 Reveal UI 分析工具來進行手機 App UI 介面的分析。

 

前提準備:

(1)已安裝 Reveal 的 Mac

(2)已越獄的 iPhone

(3)良好的網路環境

 

原理:

回想起我們使用 Reveal 來分析 iPhone 模擬器的 App 時,我們是在 Xcode 的指定工程裡引用並載入 Reveal.framework 檔案,從而當 App 運行時,開啟 Reveal 選中串連當前 App 就可以進行他的 UI 介面分析了。關鍵點就在於「指定工程裡引用並載入 Reveal.framework 檔案」。

而手機 App 是已經部署到我們手機裡了,我們不可能對 App 的安裝包“動手腳”讓他能載入 Reveal 相關的檔案,那我們該怎麼辦呢?

 

這問題問得很好,然而我們在越獄的 iPhone 裡,通過 iFile App 發現 iOS 存在共用動態庫的目錄「/Library/MobileSubstrate/DynamicLibraries」,存放在此目錄的.dylib 尾碼檔案能被 App 按需調用。那麼問題又來了,怎麼從 Mac 中拷貝 Reveal 相關的檔案到 iPhone 的此目錄下呢?

 

答案就是:先在 iPhone 中通過 Cydia App 安裝「OpenSSH」;然後在 Mac 的終端中,通過命令進行 SSH 協議的檔案傳輸。

 

PS:OpenSSH 為 WinSCP 依賴的基礎通訊服務合約:OpenSSH 是一種廣泛使用的 SSH 程式,SSH 就是 Secure Shell 的縮寫,既安全命令列,SSH 是一種可以保證使用者遠程登入到系統的協議,而 iOS 實際上就是一個基於 BSD 底層的 Linux 核心的定製 OS X 系統,所以可以通過這個通訊協議來遠程(非在本機)登入已有 SSH 協議的裝置,從而達到在 PC(Mac)上遠程輸入命令來操作 iOS 裝置的目的。

接下來,讓我們開始實踐吧。

 

步驟:

1、在 iPhone 上安裝 OpenSSH

  • 開啟 iPhone 上的 Cydia

  • 選擇右下角的搜尋,輸入 OpenSSH

  • 在搜尋到的結果中選擇 OpenSSH

  • 點擊螢幕右上方的安裝

 

 

2、測試 Mac 是否能串連 iPhone

  • 讓 Mac 和 iPhone 處於同一 wifi 環境中

  • 在 Mac 終端輸入ssh root@IP(這個 IP 是 iPhone 上的 IP,比如我的 iPhone 上的 IP 為 192.168.0.101,此時輸入命令是:ssh root@192.168.0.101)

  • 等待一會後,輸入密碼(無回顯操作),預設是 alpine(預設密碼建議不要改,但為了安全考慮,可以修改。具體操作看第3步)

  • 串連成功後,就可以管理 iPhone 上的檔案了

  • 輸入 exit 退出(我們這裡只是測試一下能不能連上 iPhone)

 

3、修改 iPhone 的 root 和 mobile 賬戶密碼(注意:操作需非常謹慎,確保記住修改後密碼:例如我設定密碼為自己易記的撥號賬戶)(可選操作)

1 //使用 root 賬戶登入2 ssh root@192.168.0.1013 //輸入賬戶密碼登入成功後,再輸入以下命令,然後按需輸入舊密碼和新密碼(無回顯),進行修改 root 賬戶密碼4 passwd5 //登出登入6 exit
1 //使用 mobile 賬戶登入;可以考慮在 root 賬戶已登入的情況下,輸入「su - mobile」命令切換為 mobile 賬戶登入2 ssh mobile@192.168.0.1013 //輸入賬戶密碼登入成功後,再輸入以下命令,然後按需輸入舊密碼和新密碼(無回顯),進行修改 mobile 賬戶密碼4 passwd5 //登出登入6 exit

 

4、準備上傳檔案

  • 開啟 Reveal,點擊功能表列上的 Help, 選擇 Show Reveal Library in Finder

  • 將 libReveal.dylib 拷貝到案頭,方便操作

  • 在案頭建立 libReveal.plist,輸入想分析的 App 的 BundleId,可以多個。比如AppStore(其實可以不輸入, 這時能分析所有的 App,但是機器會慢到你無法想象,或者開機白蘋果啥的,建議還是指定分析 App 比較好)

1 {      2     Filter = {          3         Bundles = (4             "com.apple.AppStore"5         );    6     }; 7 }

 

 

 

5、上傳檔案到 iPhone(Mac 終端操作)

1 //上傳 libReveal.dylib 和 libReveal.plist 到 iPhone(192.168.0.101是 iPhone 上的 IP)2 scp Desktop/libReveal.dylib root@192.168.0.101:/Library/MobileSubstrate/DynamicLibraries3 scp Desktop/libReveal.plist root@192.168.0.101:/Library/MobileSubstrate/DynamicLibraries

 

6、重啟 iPhone(關機、開機進行重啟)

如果你成功的完成了上面的步驟,並且 iPhone 成功重啟,OK,下面就可以分析 App 了。

  • 開啟Reveal,開啟 iPhone 上你指定的 App,在 Reveal 左上方選擇 App

  • 切換頁面後,可以點擊 Reveal 右上方的重新整理按鈕

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.