如何监控我的应用程序在android中发出的HTTP(获取,发布等)请求

atm*_*ish 24 android remote-debugging http

在我自己的应用程序中,我使用各种第三方SDK以某种形式或其他形式进行网络调用(HTTP请求).如果不编辑此代码,我是否可以在应用程序中单独编写代码来拦截我的应用程序正在进行的所有GET和POST请求?

我想在我的应用程序中记录这些HTTP调用

我知道使用FiddlerCharles代理工具,但这是在应用程序之外,但这不起作用,因为我无法在我的应用程序中记录这些HTTP调用.

有办法吗?

编辑:我在我的代码中使用Google Analytics SDK和Facebook SDK.我想要监控这些SDK从我的应用程序进行的所有网络调用

Tim*_*rry 12

尝试HTTP Toolkit - 这是我一直在构建的一个开源工具,就是为了做到这一点。它可以自动拦截来自 Android 设备的流量,无需手动设置,然后允许您检查和重写来自计算机的所有 HTTP 流量,如下所示:

该工具的屏幕截图(旁边有手机)

要拦截来自应用程序的 HTTPS 流量,您只需 a) 在应用程序的网络安全配置中信任“用户”证书(请参阅/sf/answers/2713919911/)或 b) 使用模拟器或 root设备(在这种情况下,HTTP Toolkit 可以注入“系统”证书,您的应用程序将自动信任该证书)。


San*_*ort 7

在非root手机上,您可以使用Android OS代理和重定向流量.但有些应用不尊重它.建立直接连接.可以做一些调整.使用Drony和VPN模式将所有流量重定向到SandroProxy.以下是视频如何使用SandroProxy SandroProxy与Chrome devtools捕获然后流量 SandroProxy还可以捕获pcapfiles.也可以在pcap流上制作ssl mitm.来自SandroProxy的支持