我正在为android学习目的做一个小项目。
我使用genymotion作为android模拟器并在里面安装我的apk。但问题是,我使用Fiddler4作为代理,但它只能捕获HTTP / HTTPS流量。但是,我的端口使用的应用程序有自己定义的数据包结构,它不能在端口80/443上运行。
是否还有其他工具可以捕获通过我的模拟器的所有数据包。 Wireshark不起作用。
答案 0 :(得分:1)
对于Http / Https:
Genymotion是一个很好的模拟器,它有wifi设置,所以你可以设置代理到你的PC(它可能需要更多的步骤来找到PC的IP模拟器)。然后按照指南使用fiddler捕获请求:Set Remote Machine Proxy Settings
对于TCP / UDP或其他(包括http / https):
Tcpdump很容易使用,但你应该先使用你的模拟器。
现在捕获正在运行,您可以使用Ctrl+C
来阻止它。结果数据将保存在/sdcard/ThinkDrive.pcap中。您可以将其复制出来并使用Wireshark来读取数据。
适用于Android 4.4或更高版本的网络视图:
您可以按照以下指南操作:Remote Debugging on Android with Chrome。在webview中调试html页面要容易得多。