我目前正在开发一个支持 QA 或开发人员在他们的应用程序中调试网络流量的库,我们目前使用 OKHttp 并且我知道如何创建一个拦截器并将所有请求数据发送到该库。这样开发人员或 QA 可以查看此类数据(有效负载/URL/大小/响应代码/持续时间...等),但是我想创建一个更通用的解决方案来侦听 HTTP 流量甚至 TCP 流量,然后从那里获取,但是我找不到起点,我知道这是可能的,因为 Firebase Performance 正在这样做,但我仍然找不到 API 或无论如何都无法收听此类流量。
我希望 Google 的 Firebase 性能团队的某个人分享一些关于他们如何做到这一点的信息,如果这不是商业机密 :)
我遇到了这个解决方案:https ://github.com/cyruliu/Sensitive_API_Monitor/blob/master/app/src/main/java/com/android/reverse/apimonitor/NetWorkHook.java 但是它看起来有点糟糕,我希望能找到更好的方法。