【背景】
想要分析World War这个android游戏在运行时所涉及到的http的通信。
需要用到fiddler去分析。
先要安装对应的World War和对应的Fiddler。
下面记录对应的过程。
1.在安卓虚拟机上安装World War:
【记录】在ADT中的安卓模拟器AVD中安装apk游戏World War
2.然后继续安装Fiddler:
【记录】在ADT中的安卓模拟器AVD中安装apk程序:Fiddler
3.打开Fiddler:
4.然后去搜:
fiddler debug android
再参考:
Debugging Web Requests with Fiddler for Android
Configuring Android / Google Nexus 7
去调试android设备。
5.设置Fiddler:
然后去设置“Allow remote computers to connect”:
所以重启Fiddler。
此选项,允许Android设备,通过本地的ip和端口,去连接到Fiddler。
6.接着去设置你的android设置,去通过本地,此Fiddler(此时Fiddler相当于一个代理)去访问网络(如此,android设备的网络请求,就可以被Fiddler监控到了)
即,去设置安卓设备的代理为Fiddler的ip。
所以,先要知道Fiddler当前的ip和端口
7.查看Fiddler的IP和Port
把Fiddler的窗口向右拖大点才能看到对应的那个Online图标,然后看到了当前Fiddler的ip地址和端口:
而端口Port为之前看到的:8888
此处即为:
Fiddler的IP地址:192.168.3.59
Fiddler的端口Port: 8888
8.关于如何设置安卓设备的代理,详见:
期间出现并解决了:
9.然后就再去看看Fiddler中,有没有捕获对应的数据
去访问:
http://ipv4.fiddler:8888/
然后结果是可以的:
对应的Fiddler监视到的数据是:
12.再去里面运行一下World War,看看是否能否用Fiddler捕获对应的数据请求。
点击World War去在AVD中运行该游戏:
可以看到启动界面:
稍等一下,出现语言选择:
然后就是接着是游戏画面了:
然后后来又点击了一些按钮,比如Do it,Do it again等,变成:
然后发现的确可以通过Fiddler捕获到对应的数据的:
其中的strom8,就是我们所需要查看和分析的数据。
【总结】
至此,算是可以通过在PC的Win7上安装的Fiddler,作为一个代理服务器,
然后让android设备(不论是安卓模拟器AVD,还是真实的android设备,都是可以的)
通过该Fiddler代理,去访问网络
然后就可以实现Fiddler去捕获所有的Android设备的网络访问了。
就可以用来分析,调试各种网络的情况了。