普羅大眾應該都知道,Windows上的手機模擬器除了官方開發用途的Android SDK之外(我Win10,WSA免談),基本上都是毒到嚇死人。
最近拆包用的那臺電腦重灌之後就不打算裝回Nox了,所以就在VMware Workstation上面裝了個Android,裝完之後紀錄一下過程。
現在手機基本上都是arm架構,但電腦基本上都是x86架構,而正好有一專案Android-x86,是Android的x86衍生版本,安裝過程懶得詳細寫,總之要記得把/system裝成rw,不然arm轉譯會塞不進去。
下一個問題是塔用的架構,以前有arm跟x86,但自從17版左右吧,就只剩arm了,所以機器要搞arm轉譯(?窩不知道名詞)的東西,不然塔開不起來,總之arm也是專案作者有考慮到的問題,所以不難解決。
再來就是抓封包的問題了,我還是要裝一個實體的塔起來才能拆包的理由是,我沒有技術從apk裡面找到json的hash檔案名稱,所以只能從封包攔截,不然的話其實其他不管是version key還是ab都可以從外部處理掉。
如果有人知道怎麼從apk裡面挖出json檔名,跟我說一下我會很感謝妳。
攔截封包需要裝憑證才能解https,但據從Android7開始,個別應用程式就可以選擇是否要信任使用者額外裝的憑證,顯然塔是選擇了不要,但還是乖乖的走了proxy,這操作我不懂,所以要把憑證要用一些奇怪手段裝進系統的憑證區裡面。
總之搞好之後打開發現一個好笑的問題:
Android本身就有滑鼠游標這種東西,但是事件跟觸控的tap不一樣,但塔的事件都是吃tap的,所以滑鼠操作不動塔,其實就算不能操作也可以拆,因為打開出現羊頭的時候資料就下來了,但慘的就是連點第一下選擇語言都不行。
後來就是直接用adb送tap進去了啦,操作就直接用scrcpy來操作,笑死。