150

Androidエミュレータとの間で送受信されるネットワークトラフィックを監視するにはどうすればよいですか?

4

11 に答える 11

114

Android エミュレーターからネットワーク トラフィックを直接キャプチャするには、次の 2 つの方法があります。

  1. エミュレータでARM 互換の tcpdump バイナリをコピーして実行し、SD カードに出力を書き込みます (例: などtcpdump -s0 -w /sdcard/emulator.cap)。

  2. 実行emulator -tcpdump emulator.cap -avd my_avdして、エミュレーターのすべてのトラフィックを PC 上のローカル ファイルに書き込みます。

どちらの場合も、通常どおり tcpdump または Wireshark を使用して pcap ファイルを分析できます。

于 2010-04-04T13:21:35.760 に答える
12

OS X の場合、 Charlesを使用できます。シンプルで使いやすいです。

詳細については、Android Emulator と Charles Proxyのブログ投稿をご覧ください。

于 2013-06-26T05:36:35.297 に答える
8

はい、Wireshark は機能します。

同じ src IP から送信されているため、エミュレータ トラフィックのみを除外する簡単な方法はないと思います。

おそらく最良の方法は、非常にベアな VMware 環境をセットアップし、そこでエミュレーターのみを実行することです。少なくとも、バックグラウンド トラフィックが多すぎないようにする方法です。

于 2010-04-04T13:17:10.520 に答える
6

-tcpdumpAndroid Studio の現在のリリースでは、引数が正しく適用されませんでした。次のように、関連するパラメーターを qemu に渡すことで、ダンプをキャプチャすることができました。

tools/emulator -engine classic -tcpdump dump.cap -avd myAvd
于 2016-06-29T12:31:57.810 に答える
4

Fiddlerを使用して http トラフィックを監視できます。

http://aurir.wordpress.com/2010/03/22/tutorial-getting-android-emulator-working-with-fiddler-http-proxy-tool/

ここでFiddler2 を使用することもできます。

于 2011-10-20T01:54:47.493 に答える
4

Wiresharkを使用することをお勧めします。

手順:

  1. Wireshark をインストールします。
  2. 通話に使用しているネットワーク接続を選択します (たとえば、使用している場合は Wifi を選択します)。
  3. 多くの要求と応答があり、余分なアプリケーションを閉じます。
  4. 通常、リクエストは緑色で表示されます。リクエストを見つけたら、宛先アドレスをコピーし、宛先アドレスを入力ip.dst==52.187.182.185してフィルタを使用します。

ここで説明した他のフィルタリング手法を利用して、特定のトラフィックを取得できます。

于 2020-01-30T13:16:57.320 に答える
2

コマンドでエミュレータを起動できます-avd Adfmf -http-proxy http://SYSTEM_IP:PORT。HTTP アナライザーを使用しましたが、それ以外でも機能するはずです。詳細はこちら: http://stick2code.blogspot.in/2014/04/intercept-http-requests-sent-from-app.html

于 2014-04-03T14:27:06.843 に答える
2

http://docs.mitmproxy.org/en/stable/install.htmlを使用でき ます

セットアップが簡単で、追加の微調整は必要ありません。

さまざまなツールを試してみましたが、本当に優れていて簡単であることがわかりました。

于 2017-01-13T03:59:14.570 に答える