How to set system images (path?) when creating an Android AVD?

David J. picture David J. · Apr 7, 2017 · Viewed 34.6k times · Source

I'm trying to create an AVD with Android on Linux. When I run android create avd in my Cordova project folder, I get this message:

  -k --package : Package path of the system image for this AVD (e.g.
                 'system-images;android-19;google_apis;x86'). [required]

My problem is that I have no idea what to add for this option and can't find any good references online. Apparently I have system images installed:

enter image description here

But how do I reference these? I took a stab at it based on the example and I get this error:

david@david-Virtual-Machine:~/projects/test-test$ android create avd --package "system-images;android-25;google-apis;x86" --name "foo"
*************************************************************************
The "android" command is deprecated.
For manual SDK, AVD, and project management, please use Android Studio.
For command-line tools, use tools/bin/sdkmanager and tools/bin/avdmanager
*************************************************************************
Running //home/david/Android/Sdk/tools/bin/avdmanager create avd --package system-images;android-25;google-apis;x86 --name foo

Error: Package path is not valid. Valid system image paths are:

(In my platforms folder the only platform listed is android-25)

Any suggestions?

Answer

Igor Gladun picture Igor Gladun · May 25, 2017

Pay attention that android is deprecated. Use avdmanager.

First, you need to download the necessary packages. Example of downloading API 23 packages for x86 emulators:

 ./sdkmanager "system-images;android-23;google_apis;x86"

Then accept the license agreement

 ./sdkmanager --licenses

and then create your emulator

./avdmanager create avd -n test -k "system-images;android-23;google_apis;x86" -b x86 -c 100M -d 7 -f