我完全没有配置代理来检查我正在开发的应用程序的HTTP(S)流量。我已经尝试运行Fiddler2和Charles Web Proxy,两者都运行在127.0.0.1:888,并使用参数启动Android模拟器:
-http-proxy http://127.0.0.1:8888
要测试它,我打开Android浏览器。我在Fiddler2中看到请求是通过代理路由的。但是,只有RARELY请求才会收到成功的响应。在大多数情况下,当我说大多数时候我的意思是99%的时候,请求被重试并再次失败,Android浏览器告诉我“服务器无法通信”。
有没有人找到一种方法来配置Fiddler2或Charles以通过Android模拟器调试HTTP(S)流量?
答案 0 :(得分:0)
-http-proxy
模拟器选项适用于我(后面有一个真正的HTTP代理),所以不确定Charles的问题是什么。
另一种选择是capture the network traffic directly,然后使用Wireshark进行分析 - 如果你有私钥,可以进行SSL解密。
答案 1 :(得分:0)
我能够使用HTTP嗅探器而不是代理来查看流量。我使用了HTTPScoop,这是一个不错的小应用程序。
使用HTTPScoop的好处还在于,当我打开互联网共享并让我的手机使用我的mac上的wifi时,我也可以在我的实际设备上看到流量。所以这对于调试手机本身和模拟器上发生的事情是一个很好的协议。
这样,使用什么模拟器并不重要,因为嗅探器看到的流量与模拟器,设备,编译器设置等无关。
答案 2 :(得分:0)
我在使用Android开发工具r12中的模拟器时遇到了同样的问题。它应该在您下载r11并将r12中的仿真器替换为r11中的仿真器时工作。跟踪错误here。
要获取r11从download page复制下载链接并将r12更改为r11。