mli*_*oom 118 networking android traffic emulation sniffer
如何监控从我的Android模拟器发送和接收的网络流量?
Chr*_*Orr 96
有两种方法可以直接从Android模拟器捕获网络流量:
在仿真器上复制并运行与ARM兼容的tcpdump二进制文件,可能会将输出写入SD卡(例如tcpdump -s0 -w /sdcard/emulator.cap
).
运行emulator -tcpdump emulator.cap -avd my_avd
将所有模拟器的流量写入PC上的本地文件
在这两种情况下,您都可以正常使用tcpdump或Wireshark分析pcap文件.
Android Studio的当前版本未正确应用该-tcpdump
参数.我仍然能够通过将相关参数传递给qemu来捕获转储,如下所示:
tools/emulator -engine classic -tcpdump dump.cap -avd myAvd
Run Code Online (Sandbox Code Playgroud)
小智 5
是的,wireshark会工作.
我认为没有任何简单的方法来过滤掉模拟器流量,因为它来自相同的src IP.
也许最好的方法是建立一个非常简单的VMware环境并且只在那里运行模拟器,至少那样不会有太多的后台流量.
现在可以直接使用 Wireshark 来捕获 Android 模拟器流量。有一个名为androiddump的extcap插件使它成为可能。您需要在模拟器上运行的系统映像中有一个可执行文件(大多数当前映像都有它,使用 API 24 和 API 27 映像进行测试)并在主机上以 root 身份运行(只需运行)。在 Wireshark 中的可用接口列表(仅限 Qt 版本,已弃用的 GTK+ 没有)或显示的列表中应该有几个 Android 接口允许嗅探蓝牙、Logcat 或 Wifi 流量,例如:tcpdump
adbd
adb root
tshark -D
android-wifi-tcpdump-emulator-5554 (Android WiFi Android_SDK_built_for_x86 emulator-5554)
小智 5
虽然 Android Studio 的 App Inspection 的网络检查器菜单有助于跟踪网络请求,但我注意到它并不能跟踪所有请求。这是文档。
据我所知,跟踪 Android 模拟器网络请求的最简单方法是HTTP Toolkit。它的设置速度非常快,并且有一个漂亮的 UI(类似于 Chrome 开发工具的“网络”选项卡)来跟踪请求。
只需安装它,单击“通过 ADB 的 Android 设备”选项,并接受模拟器中显示的提示(文档)。
归档时间: |
|
查看次数: |
98898 次 |
最近记录: |