ApiCatcher 現已支援 Android
ApiCatcher for Android 現已上架 Google Play。至此,ApiCatcher 已覆蓋 iOS、Android、macOS、Windows 四個平台。

實現原理
iOS 版基於 Network Extension 在系統底層攔截流量,App 裡一鍵啟動即可抓包,不依賴系統代理設定。Android 版沿用了相同的思路,底層實現換成了 Android 提供的 VpnService 機制。
啟動抓包後,ApiCatcher 會建立一個 VpnService,透過 TUN 虛擬網卡捕獲裝置所有 IP 封包。底層用 tun2proxy(Rust 原生函式庫)解析 TCP 封包,將 HTTP/HTTPS 連線透明轉發至本地 127.0.0.1:8888。本地基於 Netty 的 MITM 代理伺服器對 HTTP 流量直接轉發並記錄,對 HTTPS 流量透過 CONNECT 隧道 + 動態憑證簽發完成解密。整個過程應用層無感知,不需要改 Wi-Fi 或行動數據的代理設定。
核心能力
Android 版與 iOS 版核心能力對齊,不只是能抓包。
抓 HTTPS 和 WebSocket(WS/WSS)流量是基礎能力,WebSocket 資料幀以聊天訊息列表的方式展示,方便查看每條訊息的收發內容。透過 Host 黑白名單可以過濾抓取不關心的請求,避免抓取到第三方 App 的流量。
介面除錯方面,重寫規則支援 Mock 回應、改寫請求/回應、正則替換請求/回應、重定向請求、丟棄請求/回應、延遲回應等重寫行為,也支援透過腳本處理複雜的邏輯。支援快速重放請求,或編輯組合重放規則將多個請求按依賴編排執行順序,支援依賴參數注入。
ApiCatcher 會在抓包過程中根據 HTTP 請求自動生成 API 文件,多次抓取同一介面會自動合併回應欄位。文件可以匯出到 Postman 或 Apifox,請求歷史也會作為用例一併匯出。除此之外,還支援匯出 HAR 請求記錄、提取圖片/影片/音訊等媒體檔案。
ApiCatcher 還支援 DNS 映射、API 掃描、Protobuf 解碼、定時重放等能力。
介面設計與 iOS 版保持一致,使用者體驗更友好。支援 JSON、XML 等程式碼高亮顯示,提供多種程式碼高亮主題可供選擇,程式碼編輯器使用相同的高亮主題。支援 JSON 搜尋、路徑摺疊、JSON 對比。除此之外,提供十六進位視圖查看二進位內容,支援渲染圖片(包括 SVG)、播放影片/音訊。
上手說明
Android 抓 HTTPS 同樣需要先安裝並信任 CA 憑證,但與 iOS 不同的是,Android 7 以上使用者只能將 CA 憑證安裝到使用者憑證區,不能安裝到系統憑證區。因此在 Android 上使用 ApiCatcher 抓 App 的 HTTPS 流量,需要在 App 專案程式碼裡設定信任使用者憑證。
CA 憑證安裝、HTTPS 抓包的限制說明、以及開發者如何抓自己 App 的設定方法,見 ApiCatcher for Android。
ApiCatcher for Android 支援 Android 11(API 30)及以上系統。