我完全有可能configuration一个代理来检查我正在开发的应用程序的HTTP(S)stream量。 我试过运行Fiddler2和Charles Web Proxy,两者都在127.0.0.1:888上运行,然后用参数启动Android模拟器:
-http-proxy http://127.0.0.1:8888
为了testing它,我打开Android浏览器。 我在Fiddler2看到请求是通过代理路由的。 但是,只有RARELY请求才能收到成功的响应。 在大多数情况下,当我说的最多的时候,我的意思是99%的时间,请求被重试,然后再次失败,Android浏览器告诉我“服务器无法通信”。
有没有人find一种方法来configurationFiddler2或Charles来debugging通过Android模拟器的HTTP(S)stream量?
-http-proxy
模拟器选项适用于我(后面有一个真正的HTTP代理),所以不知道Charles会遇到什么问题。
另一种方法是直接捕获网络流量 ,然后使用Wireshark进行分析 – 如果您拥有私钥,则可以进行SSL解密。
我能够使用HTTP嗅探器而不是代理来查看流量。 我用HTTPScoop,这是一个不错的小应用程序。
另外关于使用HTTPScoop的好处是,我也可以看到我的实际设备上的流量,当我打开互联网共享,并让我的手机使用我的Mac上的无线网络。 所以这对于调试手机本身和模拟器发生了什么很好的处理。
这样,使用什么模拟器并不重要,因为嗅探器可以看到独立于仿真器,设备,编译器设置等的流量。
Charles在使用Android开发工具r12中的Emulator时遇到了同样的问题。 当您下载r11并将r12中的仿真器替换为r11中的仿真器时,它应该正常工作。 这个bug 在这里被跟踪。
要获得r11从下载页面复制下载链接并将r12更改为r11。