我記得在我剛接觸 Android 沒多久的時候,要看 app 到底發了哪些 request 是很簡單的一件事情。只要在電腦上面裝個 Charles,接著設定手機上的 Wifi,讓它 proxy 到電腦上,然後輸入特定網址下載 Charles 提供的憑證,安裝完成以後就搞定了。
但前陣子用了一樣的流程,雖然有聽到一些封包,但從 app 出來的流量卻是空的,上網找了各式各樣的解法之後都行不通。
最後我才知道,原來是 Android 在 6.0 以上改變了安全性的設定,預設就不相信使用者自行安裝的憑證,所以才會攔截不到。有種做法是裝個 local VPN,這樣流量就會全部都過 proxy,但我試過以後發現還是有點麻煩。
在眾多方法之中,我試過最有用的方法,就是把 apk 拆開,改一些設定之後再裝回去,這篇就來記錄一下流程跟心得。