安卓模擬器要選可以橋接網絡的,本文中用的是雷電模擬器。
軟件的安裝都很簡單,在此不再贅述。
fiddler中的設置
首先,打開fiddler,點擊Tools選項卡下的Options。
切換到https選項卡,打開捕獲https連接和解密https流量,並將證書文件導出至桌面。
切換到connections選項卡,打開允許遠程計算機連接,其它的開不開無所謂,端口號也可以自己改,這里就不改了。
點擊ok,fiddler這邊的設置就完成了。最后,將鼠標放在右上角的Online上記錄下本機的ip地址(這里ip地址有點多,不一定有這么多的ip地址,每台電腦不一樣,后面能找到要用的那個ip地址,另外,如果fiddler的窗口太小Online可能不顯示)。
安卓模擬器中的設置
打開安卓模擬器,進入到模擬器設置界面(本文中使用的是雷電模擬器)。
切換到網絡設置,打開橋接模式,根據個人喜好選擇動態分配ip或者固定ip,安裝驅動后確定,會提示重新啟動模擬器。
待重新啟動后,點擊模擬器右側更多-共享文件,選擇打開電腦文件夾,將之前從fiddler導出的證書文件拖進來,關閉窗口。
進入wifi設置,點擊右上角的三個點,再點擊高級。
在下方可以看到模擬器的ip地址是192.168.1.129,在之前記錄的ip地址中找到同網段的ip地址為192.168.1.11,記住這個ip地址。
點擊上方的安裝證書,找到剛才拖進來的證書文件(忘記路徑可以點擊右邊更多-共享文件-打開安卓文件夾查看),點擊證書文件,為證書命名后確認(如果模擬器沒有設置密碼,這一步會提示設置密碼)。
回到wifi列表頁,長按當前連接的wifi,點擊修改網絡。
選中高級選項,代理設為手動,填寫之前找到的與模擬器在同一網段的電腦ip地址和在fiddler中設置的代理端口(在之前設置允許遠程計算機連接那里),點擊保存。
這樣模擬器的設置也完成了,這時如果模擬器有http或https請求的話在fiddler中就應該已經可以看見了。
下圖是抓取的模擬器上bilibili客戶端的https包。
小技巧
如果希望fiddler只監聽模擬器上的流量可以在之前設置打開監聽https流量的選項卡中的下拉框里選擇'from remote clients only',點擊ok就只有模擬器上的流量會被監聽了。