How do I add -http-proxy to an android emulator launch from Android Studio 2.0

Clintm picture Clintm · Apr 22, 2016 · Viewed 14.1k times · Source

I have a local dev web server running on a machine sitting next to me.

I use a hosts file locally on my laptop to map an url to the machine and apparently the android emulator uses NAT and can't resolve the url.

I wanted to configure the emulator to use Charles Proxy for all Internet traffic so that it will go through my laptop and pick up my hosts file for name resolution.

The instructions here say I need to set -http-proxy.

How do I do that if I launch from Android Studio 2.0?

Answer

Igor Wojda picture Igor Wojda · Dec 20, 2016

Run emulator from command line

emulator -avd <avd name> -http-proxy ip:port

emulator -avd Nexus_5_API_23 -http-proxy 127.0.0.1:8888

Windows

%UserProfile%\AppData\Local\Android\sdk\tools\emulator -avd Nexus_5_API_23 -http-proxy 127.0.0.1:8888

BTW I wasn't able to make a proxy work for me.

There other alternatives The best way to review Android HTTP connections:

  1. OKHtttp Logging Interceptor - logs in logcat, good for Retrofit

  2. Flipper https://fbflipper.com/ - nice UI and modern multiplatform approach

  3. Network Profiler - build into Android Studio, but I never made it work

  4. Stetho http://facebook.github.io/stetho - allows to display all android device/emulator requests/responses in Google chrome developer tools (deprecated but still works well)