昨天 V2EX 上的一篇經過抓包來獲取微信跳一跳源碼的文章走紅,文章鏈接點擊這裏php
我也在經過文章中的方式進行了抓包,可是並未探測到小遊戲的下載鏈接,可能微信對此已經進行了修復。並且上文中提供的下載鏈接也顯示爲 404 的狀態碼。html
雖然抓包未果,可是依然能夠從本地將源碼抽離出來,下面將介紹如何從 Android 手機裏面找到微信下載的小遊戲源碼android
須要注意的是必須是已經 root 了的 Android 手機,不然將沒有權限訪問對應手機的系統文件夾git
經過 USB 將手機鏈接到電腦上,而後運行如下命令github
$ adb devices
複製代碼
若是顯示了一下信息shell
List of devices attached
71MBBL6228EU device
複製代碼
說明手機已經鏈接到電腦上,如顯示未找到 adb
命令,則說明 Android SDK 安裝錯誤或 adb
未添加到電腦 path
中,請自行上網進行相應查閱json
手機鏈接電腦成功後,運行一下命令小程序
$ adb shell
$ su
複製代碼
終端出相似 root@{手機型號}
前綴,說明已經進入到 root
模式下微信小程序
$ cd /data/data/com.tencent.mm/MicroMsg/{User}/appbrand/pkg
複製代碼
{User} 爲當前用戶的用戶名,相似於 1ed**********c514a18
bash
而後當前目錄就是微信用於存放小程序和小遊戲下載包的位置
$ ls
_-791877121_3.wxapkg
_1079392110_5.wxapkg
_1079392110_5.wxapkg_xdir
_1123949441_92.wxapkg
_576754010_1.wxapkg
複製代碼
以上是個人微信中所下載過的小程序和小遊戲源碼
由於 /data
目錄爲系統級目錄,沒法直接將其進行復制,須要從新掛載爲可操做模式
$ mount -o remount,rw /data
複製代碼
此時就能夠將當前目錄下的文件拷貝到 sdcard 中
$ cp /data/data/com.tencent.mm/MicroMsg/{User}/appbrand/pkg/_1079392110_5.wxapkg /mnt/sdcard
複製代碼
而後將 _1079392110_5.wxapkg
文件拷貝到電腦裏,經過該腳本進行解壓後,即爲其源碼
經過微信小遊戲開發工具新建一個空白的小程序或者小遊戲的項目,主要不要選擇快速啓動模板
而後把剛纔解壓出來的源代碼複製到剛剛建立的項目目錄中,開發工具會提示編譯錯誤,這時只要在項目中新建一個 game.json
文件,並在文件裏寫入如下代碼
{
"deviceOrientation" : "portrait"
}
複製代碼
而後將開發工具的調試基礎庫改成 game
程序就會在開發者工具裏運行起來了