web-dev-qa-db-ja.com

Charles ProxyでLollipopエミュレータを設定する方法Android?

Charles Web Proxyおよび最新のAndroidエミュレーターでSSL証明書を構成する方法? ( MAC))と SSL Proxy/Charles and Android trouble とCharles Proxyを使用してAndroid =キットカットまでのエミュレーター。

今、私はLollipopエミュレータでも同じことをしようとしています。ただし、KitKatエミュレーターを正常にセットアップするために使用したのと同じ手順を繰り返しても、Charlesは何も表示しません!エミュレーターのブラウザーを使用してWebに接続しようとすると、次のエラーが表示されます。 enter image description here

パケットスニッフィングを有効にするために、Mac OS XのAndroid Lollipopエミュレーターに必要な特別な手順はありますか?

前もって感謝します!

22

コマンドラインをいじりたくない場合は、エミュレータからこれを行うことができますが、もう少しセットアップが必要ですが、うまく動作します:

  1. [設定]> [その他]> [セルラーネットワーク]> [アクセスポイント名]を開きます。

enter image description here

  1. メインAPNを選択し、プロキシを10.0.2.2:8888(マシンlocalhostを指す)として入力します。実際のデバイスまたはローカルデバイスファームで実行している場合は、ネットワーク上で別のIPを使用できます。

enter image description here

  1. Chromeでcharlesproxy.com/getsslにアクセスします

enter image description here

  1. SSL証明書がダウンロードされます

enter image description here

  1. 開くと、ピンを設定するか、既に設定されている場合は確認するように求められます

  2. 証明書に名前を付ける

enter image description here

  1. プロキシをお楽しみください(リクエストを表示するには、CharlesでドメインのSSLプロキシを有効にする必要があります)

注:API 24エミュレーターでこれをテストし、機能しているようですが、他のバージョンでも機能するはずです。

注2:Android Studio 3.0の場合、Charlesは、APIを21以上使用する場合、ほとんどの場合、これが必要になるため、今後必要なくなります。 https://developer.Android.com /studio/profile/network-profiler.html

17
pablisco

Android emulator enter image description here

10

Androidエミュレーターでのデバッグ中は、Macでは少し面倒です。

手順に従ってください:

1)ターミナルを開き、SDKパスのtoolsフォルダーに移動します。
2)emulatorという名前のファイルを端末にドラッグアンドドロップします(そうすると、実行可能ファイルのパスがわかります)。
これで、エミュレータは次のようにパスを読み取るはずです。

/ Users/your_pc_name/Android_sdk/tools/emulator -avd Nexus_6P_API_23 -http-proxy http://x.x.x.x:8888

ここで、xxxxはCharlesヘルプメニューで見つけることができるIPアドレスです。
3)これを実行します。

出来上がり!これで、エミュレータがプロキシネットワークモードで起動します。

8
sud007
/Users/`whoami`/Library/Android/sdk/tools/emulator -avd `Android list avd | grep Name -m 1 | cut -c 10-99` -http-proxy `ipconfig getifaddr en0`:8888

これはほとんどのMacで動作するはずです。

2