ionicframework - ANDROID_HOME no está configurado y el comando "Android" no está en tu PATH Phonegap
tutorial ionic 2 (6)
Tuve el mismo problema pero encontré un método alternativo, es decir, el uso de la aplicación para desarrolladores de Phonegap . Puedes instalarlo en el emulador y usarlo.
He instalado el paquete de Android y he configurado todo en el archivo .bashrc e incluso cuando digo android en la línea de comandos ... obtengo el administrador de Android ... pero cuando digo la plataforma iónica agrego Android siempre obtengo un error como "Error: ANDROID_HOME no está configurado y el comando "android" no está en su RUTA. Debe cumplir al menos una de estas condiciones ". . Lo intenté de muchas maneras pero el problema no fue solucionado.
mi plataforma:
Ubuntu 14.04 64 bit
archivo .bashrc:
export HOME="/home/system"
export ANDROID_HOME="$HOME/adt-bundle-linux-x86_64-20140702/sdk/tools"
export ANDROID_PLATFORM_TOOLS="$HOME/adt-bundle-linux-x86_64-20140702/sdk/platform-tools"
export PATH="$ANDROID_HOME:$ANDROID_PLATFORM_TOOLS:$PATH"
export JAVA_HOME="/usr/lib/jvm/java-7-openjdk-amd64"
export ANT_HOME="/usr/share/ant"
export PATH="$ANT_HOME/bin:$PATH"
export ANDROID_HOME="/home/system/adt-bundle-linux-x86_64-20140702/sdk/tools"
error durante la ejecución:
system@system-H81M-S1:/usr/share/nginx/www/myApp# ionic platform add android
npm http GET https://registry.npmjs.org/cordova-android/3.6.3
npm http 200 https://registry.npmjs.org/cordova-android/3.6.3
npm http GET https://registry.npmjs.org/cordova-android/-/cordova-android-3.6.3.tgz
npm http 200 https://registry.npmjs.org/cordova-android/-/cordova-android-3.6.3.tgz
Creating android project...
/system/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:126
throw e;
^
Error: ANDROID_HOME is not set and "android" command not in your PATH. You must fulfill at least one of these conditions.
at /system/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/lib/check_reqs.js:158:19
at _fulfilled (/system/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:798:54)
at self.promiseDispatch.done (/system/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:827:30)
at Promise.promise.promiseDispatch (/system/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:760:13)
at /system/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:821:14
at flush (/system/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/node_modules/q/q.js:108:17)
at process._tickCallback (node.js:419:13)
at Function.Module.runMain (module.js:499:11)
at startup (node.js:119:16)
at node.js:906:3
Error: /system/.cordova/lib/npm_cache/cordova-android/3.6.3/package/bin/
create: Command failed with exit code 8 at ChildProcess.whenDone (/usr/lib/node_modules/cordova/node_modules/
cordova-lib/src/cordova/superspawn.js:135:23)
at ChildProcess.emit (events.js:98:17)
at maybeClose (child_process.js:756:16)
at Process.ChildProcess._handle.onexit (child_process.js:823:5)
puedo saber cómo puedo solucionar este error
Después de enfrentarme por muchos días a este problema, sigo las instrucciones anteriores y configuré mi perfil .bash de esta manera en MAC
#====================================================
export ANT_HOME=/usr/local/Cellar/ant/1.9.4/bin/ant
#
export HOME="/Users/User"
export ANDROID_HOME="$HOME/Downloads/Developer/adt-bundle-mac-x86_64-20140702/sdk"
export PATH="$HOME/Downloads/Developer/adt-bundle-mac-x86_64-20140702/sdk/tools:$ANDROID_HOME/platform_tools:$PATH"
#
export JAVA_HOME=$(/usr/libexec/java_home)
export PATH=${PATH}
#
export PATH=${PATH}:/Users/User/Downloads/Developer/adt-bundle-mac-x86_64-20140702/sdk/platform-tools:/Users/User/Downloads/Developer/adt-bundle-mac-x86_64-20140702/sdk/tools:/Users/User/Downloads/Developer/adt-bundle-mac-x86_64-20140702/sdk/build-tools/android-4.4W
#
NPM_PACKAGES="${HOME}/.npm-packages"
PATH="$NPM_PACKAGES/bin:$PATH"
NODE_PATH="$NPM_PACKAGES/lib/node_modules:$NODE_PATH"
#
# Unset manpath so we can inherit from /etc/manpath via the manpath
# command
unset MANPATH # delete if you already modified MANPATH elsewhere in your config
MANPATH="$NPM_PACKAGES/share/man:$(manpath)"
Traté de llamar a etc / platforms / android / cordova / run --emulator después de configurar ANDROID_HOME con etc / android-sdk-linux / y funciona bien. El único problema es que mi sistema es un OS / PC de 32 bits y luego tuve que configurar ANDROID_EMULATOR_FORCE_32BIT = ''true'' con el comando de exportación.
Antes de esta operación, por supuesto, configuro el emulador a través del comando ''android avd''
En mi caso, primero creé la aplicación iónica y ejecuté otros comandos iónicos usando SUDO; es por eso que no funcionaba ya que sudo usa el perfil raíz.
Así es como lo arreglé:
elimine /home/user1/.cordova (reemplace user1 con su nombre de usuario) utilicé el comando "sudo rm" para eliminar la carpeta y todos sus contenidos
Eliminé la carpeta / home / user1 / tmp para que cuando ejecutemos el cordova otra vez creemos la nueva carpeta tmp con el permiso apropiado del usuario actual.
creó una nueva aplicación usando "inicio iónico app5" - este fue el problema principal ya que lo estaba haciendo con sudo
plataforma agregada usando "plataforma iónica agregar Android"
ejecutado usando "android run iónico"
recuerde que si desde la línea de comando puede ejecutar el comando "android" y el comando "java -version", la solución anterior es la solución perfecta. Avísame si necesitan mi ayuda.
Enfrenté el mismo problema, y está resuelto.
Creo que es un problema con la compatibilidad de la última cordova con la última versión de Android. Además de tener problemas con la ruta de inicio de Android.
En archivo .bashrc
export HOME="/home/indranil"
export ANDROID_HOME="$HOME/software/adt-bundle-linux-x86_64-20140702/sdk"
export PATH="$HOME/software/adt-bundle-linux-x86_64-20140702/sdk/tools:$ANDROID_HOME/platform_tools:$PATH"
Intenta descargar el último SDK de Android si estás usando una versión anterior. Y descargue Android 4.4.2 (API 19) desde su administrador de Android.
Puede usar el último cordova (4.0.0) pero si el problema persiste, utilice cordova (3.5.0-0.2.7), pero si desea actualizar o degradar el cordova, elimine el existente usando: -
npm uninstall -g cordova (If linux use sudo npm uninstall -g cordova)
Si está usando linux, no use sudo
commad en el momento de instalar cordoava, si obtiene algún error, ejecute los siguientes comandos
sudo chown -R `whoami` ~/.npm
sudo chown -R `whoami` /usr/local/lib/node_modules
sudo chown -R `whoami` /usr/local
Luego instala cordova sin sudo
npm install -g [email protected]
En el momento de crear una aplicación iónica y agregar Android como plataforma, no use el comando sudo. Cordova crea un directorio .cordova en la carpeta de inicio al momento de agregar la plataforma. Elimine ese directorio antes de crear la nueva aplicación iónica.
Y después de descargar el Android (4.4.2), crea un dispositivo virtual Android usando el comando:
android avd
También he estado luchando con esto (Ubuntu 14.04) y recuerdo haber aceptado que hacer funcionar el comando construir de cordova era demasiado difícil para mí :-). Estaba seguro de que mis PATH eran correctas (probaba root y usuario, etc.) y probé todas las soluciones que pude encontrar.
Un comentario de Stoicuta Alexandru en esta página me lo resolvió. Yo cito:
Si ANDROID_HOME no está configurado, cordova lo buscará en home / android-sdk
Así que simplemente colocando mi sdk de Android en la carpeta de inicio y (importante) poniéndole nombre, android-sdk lo hizo.
Espero salvar a algunas personas en algún momento ...