'How to pass command line options to the emulator in Android Studio?

I use Android Studio 2.1.3. When I run an Android app I pick an AVD, where can I pass command line options such as -http-proxy? I don't even find a way in the run configuration.



Solution 1:[1]

I found a hacky solution to add parameters to the Android Studio AVD.

Android Studio by default uses the binary $ANDROID_SDK/emulator/emulator. In my case the path in MacOS is /Users/martin/Library/Android/sdk/emulator/emulator. What I did is:

  1. Rename the binary to emulator-original

  2. Create a bash script with the name emulator that contains:

    /Users/<YOUR_USERNAME>/Library/Android/sdk/emulator/emulator-original <PARAMS> $@```
    
    
  3. Change the script permissions with chmod +x emulator

Now Android Studio runs my script instead of running the binary

Update: try Stef's solution first, it looks better than this hack

Solution 2:[2]

You can set emulator start parameters in an environment variable studio.emu.params; they will be added to the command line when AS starts the emulator, see source code.

Tested on Windows with AS 4.1 and set studio.emu.params=-writable-system.

Solution 3:[3]

I'm also missing those settings.. Some kind of workaround is to go to wifi settings -> tap and hold wifi network -> modify network and there update proxy/dns settings

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1
Solution 2 Stef
Solution 3 kazuar