0

I just updated my Android Studio to 3.5.3 and installed Gradle 4.10.3 for my Ionic project.

I added this to my PATH variable:

# Add the Android SDK Path
export ANDROID_SDK_ROOT=$HOME/Library/Android/sdk
# emulator
export PATH=$PATH:$ANDROID_SDK_ROOT/emulator
# avdmanager, sdkmanager
export PATH=$PATH:$ANDROID_SDK_ROOT/tools
# adb, logcat
export PATH=$PATH:$ANDROID_SDK_ROOT/platform-tools

And if I run ${ANDROID_SDK_ROOT}/emulator/emulator -version I see this: Android emulator version 29.3.4.0 (build_id 6110076) (CL:N/A)

I have one avd installed on my machine and I get it to run by running either of these commands:

${ANDROID_SDK_ROOT}/tools/emulator -avd Pixel_2_XL_API_27
${ANDROID_SDK_ROOT}/emulator/emulator -avd Pixel_2_XL_API_27

It appears that Android gave some priority to the emulator binary recently. However, when I run which emulator from the CLI, it returns:

/Users/[username]/Library/Android/sdk/tools/emulator

When it should be returning:

/Users/[username]/Library/Android/sdk/emulator/emulator

I am not sure what I have done incorrectly in my config, but I am unable to run an Android emulator from my Ionic project, as I am always greeted with this error:

PANIC: Missing emulator engine program for 'x86' CPU.

Any thoughts on what I should look at some that I can ensure that I am able to run the emulator from my project?

EDITS

I think this may have something to do with my $PATH variable. When I echo $PATH, this is what is returned:

/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/[username]/Library/Android/sdk/platform-tools:/Users/[username]/Library/Android/sdk/tools:/Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home/bin:/Users/[username]/Library/Android/sdk/emulator:/Users/[username]/Library/Android/sdk/tools/bin:/Users/[username]/Library/Android/sdk/platform-tools:/Applications/Android Studio.app/Contents/gradle/gradle-4.10.3/bin

However, this is my entire $HOME/.bash_profile :

# Create a JAVA_HOME variable, determined dynamically
export JAVA_HOME=$(/usr/libexec/java_home)
# Add that to the global PATH variable
export PATH=$PATH:$JAVA_HOME/bin
# Add the Android SDK Path
export ANDROID_SDK_ROOT=$HOME/Library/Android/sdk
# emulator
export PATH=$PATH:$ANDROID_SDK_ROOT/emulator
# avdmanager, sdkmanager
export PATH=$PATH:$ANDROID_SDK_ROOT/tools/bin
# adb, logcat
export PATH=$PATH:$ANDROID_SDK_ROOT/platform-tools
#Set GRADLE_HOME
export GRADLE_HOME=/Applications/Android\ Studio.app/Contents/gradle/gradle-4.10.3
export PATH=$PATH:$GRADLE_HOME/bin

Where would the /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/[username]/Library/Android/sdk/platform-tools:/Users/[username]/Library/Android/sdk/tools in the $PATH variable be coming from?

zeropsi
  • 682
  • 9
  • 24
  • I have checked out this [post](https://stackoverflow.com/questions/26483370/android-emulator-error-message-panic-missing-emulator-engine-program-for-x86) and it did not resolve my issues. It is still trying to use my `/tools/emulator` vs `/emulator/emulator` to launch my emulators. – zeropsi Jan 21 '20 at 16:29
  • Found the problem. For some reason I had some paths defined in my `/etc/paths`. After I deleted the Android paths from that file, we are back in business. – zeropsi Jan 21 '20 at 17:05

0 Answers0