Search code examples
androidandroid-studiocordovasdkphonegap

How to run the Android Emulator with Cordova?


Prerequisite

  • Android SDK is well installed (directory : /Users/gamecube/Library/Android/sdk)

How to reproduce :

  1. Run this command : cordova build android
  2. Run this command to launch android emulator : cordova emulate android --verbose

Expected result

The emulator is launched.

Obtained result

Command finished with error code 0: /Users/gamecube/Desktop/geocars/platforms/android/gradlew cdvBuildDebug,-b,/Users/gamecube/Desktop/geocars/platforms/android/build.gradle
Built the following apk(s): 
    /Users/gamecube/Desktop/geocars/platforms/android/app/build/outputs/apk/debug/app-debug.apk
No scripts found for hook "before_deploy".
Checking Java JDK and Android SDK versions
ANDROID_SDK_ROOT=undefined (recommended setting)
ANDROID_HOME=/Users/gamecube/Library/Android/sdk (DEPRECATED)
Running command: adb devices
Command finished with error code 0: adb devices
Could not find either `android` or `avdmanager` on your $PATH! Are you sure the Android SDK is installed and available?
CordovaError: Could not find either `android` or `avdmanager` on your $PATH! Are you sure the Android SDK is installed and available?
    at /Users/gamecube/Desktop/geocars/platforms/android/cordova/lib/emulator.js:176:35
    at processTicksAndRejections (internal/process/task_queues.js:97:5)

My questions

Why Android Emulator does not work?

and

Why is there this error? :

CordovaError: Could not find either `android` or `avdmanager` on your $PATH! Are you sure the Android SDK is installed and available?

Solution

  • I solved my problem.

    How did I do it?

    • I opened Android Studio, and went to the SDK Manager.

    image

    • I clicked on the SDK Tools tab, and in the list displayed, I checked: Android SDK Command-line Tools (latest)

    image

    • I then clicked on Apply (then OK on the pop-up) to download the package in question.

    • I added the path of avdmanager to PATH in my .bash_profile

    • I have run source ~ / .bash_profile to refresh

    • And I launched my command: cordova emulate android --verbose successfully since the emulator has opened well.