No se pudo encontrar la variable de entorno ‘ANDROID_HOME’

9 minutos de lectura

Estoy tratando de construir un proyecto ionic-android y tengo instalado android sdk.

Paquetes instalados del administrador SDK

El nombre de mi proyecto es myApp. He agregado con éxito la plataforma Android a myApp. Pero cuando trato de construir el proyecto

~/myApp$ sudo ionic build android

el resultado es

Running command: /home/hari/myApp/hooks/after_prepare/010_add_platform_class.js /home/hari/myApp
  add to body class: platform-android
  ERROR building one of the platforms: Failed to find 'ANDROID_HOME'  environment variable. Try setting setting it manually.
  Failed to find 'android' command in your 'PATH'. Try update your 'PATH' to include path to valid SDK directory.
You may not have the required environment or OS to build this project
Error: Failed to find 'ANDROID_HOME' environment variable. Try setting setting it manually.
Failed to find 'android' command in your 'PATH'. Try update your 'PATH' to include path to valid SDK directory.

ver la variable ANDROID_HOME y PATH

echo $ANDROID_HOME
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/hari/Android/Sdk

echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/hari/Android/Sdk/tools:/home/hari/Android/Sdk/platform-tools:/usr/local/bin:/opt/gradle/bin

He visto casi el mismo tipo de preguntas sobre el desbordamiento de pila, pero ninguna me funciona. ¿Hay algún problema con mi configuración de Android-sdk? ¿Cómo puedo construir este proyecto?

  • Tu ANDROID_HOME se parece más a un PATH. Cuando haces eco, solo debería regresar /home/hari/Android/Sdk (suponiendo que sea correcto)

    – Un jugador de críquet

    24/03/2016 a las 13:30

  • Ver mi respuesta en [This Question ](stackoverflow.com/questions/35110403/…) lo arreglará por ti

    – Ramy hakam

    15/10/2016 a las 15:51

  • Tengo que ingresar esto cada vez que abro la terminal, ¿cómo lo conservo?

    – Lucas Flournoy

    29/09/2017 a las 20:30

  • @LukeFlournoy Vea las “Cosas prioritarias” (pasos 1 y 2) de esta respuesta

    – Diego Somar

    3 de marzo de 2019 a las 10:02

avatar de usuario
brad w

Es posible que desee confirmar que su entorno de desarrollo se ha configurado correctamente.

citando de primavera.io:

Configurar el entorno de desarrollo de Android

Antes de que pueda crear aplicaciones de Android, debe instalar el SDK de Android. La instalación de Android SDK también instala AVD Manager, una interfaz gráfica de usuario para crear y administrar dispositivos virtuales de Android (AVD).

  1. Desde el sitio web androidedescargue la versión correcta del SDK de Android para su sistema operativo.

  2. Descomprima el archivo en la ubicación que elija. Por ejemplo, en Linux o Mac, puede colocarlo en la raíz de su directorio de usuario. Ver el Desarrolladores de Android
    sitio web para obtener detalles de instalación adicionales.

  3. Configurar el ANDROID_HOME variable de entorno basada en la ubicación del SDK de Android. Además, considere agregar
    ANDROID_HOME/toolsy ANDROID_HOME/platform-tools a tu RUTA.

Mac OS X

export ANDROID_HOME=/<installation location>/android-sdk-macosx
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

linux

export ANDROID_HOME=/<installation location>/android-sdk-linux
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

ventanas

set ANDROID_HOME=C:\<installation location>\android-sdk-windows
set PATH=%PATH%;%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools

La descarga del SDK de Android no incluye plataformas Android específicas. Para ejecutar el código de esta guía, debe descargar e instalar la plataforma SDK más reciente. Para ello, utilice el SDK de Android y el Administrador de AVD que instaló en la sección anterior.

  1. Abre el Administrador de SDK de Android ventana:

    android
    

    Nota: Si este comando no abre el Administrador de SDK de Androidentonces su ruta no está configurada correctamente.

  2. Selecciona el Instrumentos caja.

  3. Seleccione la casilla de verificación para el SDK de Android más reciente.

  4. Desde el Extras carpeta, seleccione la casilla de verificación de la Biblioteca de soporte de Android.

  5. Haga clic en el Instalar paquetes… botón para completar la descarga e instalación.

    Nota: Es posible que desee instalar todas las actualizaciones disponibles, pero tenga en cuenta que llevará más tiempo, ya que cada nivel de API es una descarga grande.

  • en el número 3 (configure la variable ANRDOID_HOME): ¿En qué archivo debería estar?

    – SuMi

    16 de noviembre de 2016 a las 7:38

  • @suMi, ejecuta el comando de exportación desde su terminal según su sistema operativo y cambia la RUTA que configuró ANDROID_HOME igual a en función de dónde guardó el SDK. Consulte stackoverflow.com/questions/19986214/… para obtener más detalles.

    – Brad W.

    19 de noviembre de 2016 a las 15:21

  • @suMI Si desea que los cambios sean permanentes, agregue esas líneas a su .bashrc si está en Linux o Mac.

    – brt

    11 dic 2016 a las 17:36

  • si alguien se encuentra con este problema al construir desde teamcity, debe crear parámetros env en teamcity para ANDROID_HOME.

    – Laurence

    5 de diciembre de 2017 a las 23:22

  • Qué es eso /android-sdk-linux, tools y platform-tools? No veo esos directorios en mi /opt/android-studio. Mi Android Studio se está ejecutando pero no tengo esos directorios.

    – Dzintars

    9 de noviembre de 2018 a las 22:26

en linux

En primer lugar, configure ANDROID_HOME en el archivo .bashrc

Ejecutar comando

sudo gedit ~/.bashrc

establece la ruta del sdk de Android donde lo has instalado

export ANDROID_HOME=/opt/android-sdk-linux 
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

para recargar el comando ejecutar archivo

source ~/.bashrc

Ahora verifique la plataforma instalada, ejecute el comando

ionic platform

Producción

Installed platforms:
  android 6.0.0
Available platforms: 
  amazon-fireos ~3.6.3 (deprecated)
  blackberry10 ~3.8.0
  browser ~4.1.0
  firefoxos ~3.6.3
  ubuntu ~4.3.4
  webos ~3.7.0

si Android ya está instalado, debe eliminarlo e instalarlo nuevamente

ionic platform rm android
ionic platform add android

Si aún no está instalado, agregue la plataforma Android

ionic platform add android

Asegúrese de haber agregado la plataforma Android sin el comando Sudo

si aún recibe un error al agregar la plataforma de Android como la siguiente

Error: EACCES: permiso denegado, abra ‘/home/ubuntu/.cordova/lib/npm_cache/cordova-android/6.0.0/package/package.json’

Vaya a /home/ubuntu/ y elimine la carpeta .cordova de allí

cd /home/ubuntu/
sudo rm -r .cordova

Ahora ejecute el siguiente comando nuevamente

ionic platform add android

después de agregar la plataforma con éxito, podrá compilar andoid en ionic.

Gracias

  • desde la versión 3.0.0 es ionic cordova platform add android.

    – Baumí

    15 de mayo de 2017 a las 8:38

avatar de usuario
Nikhil

Estos son los pasos que debe seguir para configurar con éxito su Proyecto Ionic para que funcione con el emulador de Android:

  1. Cree un proyecto Ionic: pestañas ionic start appName (para el tema de la pestaña)
  2. cd appName
  3. descaro de configuración iónica
  4. Para iniciar la aplicación en la web: servicio iónico

Para agregar la plataforma Android:

cosas prioritarias

Primero necesita configurar las variables de entorno. Para esto necesitas considerar 3 archivos:

1. ~/.perfil (Para configurar las variables cada vez que se abre la terminal o se inicia la computadora):

//Código que necesita agregar al final

set PATH so it includes user's private bin directories
PATH="$HOME/bin:$HOME/.local/bin:$PATH"
export ANDROID_HOME='/home/<user_name>/Android/Sdk' <Path to android SDK>
export PATH=$PATH:$ANDROID_HOME/bin
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/platform-tools

2. /etc/entorno (para establecer las variables de entorno):

//Todo el contenido del archivo

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
JAVA_HOME="/usr/lib/jvm/java-8-oracle"
ANDROID_HOME="/home/<user_name>/Android/Sdk" <Path to android SDK>

3. /etc/perfil:

//Código que necesitas agregar al final

JAVA_HOME=/usr/lib/jvm/java-8-oracle <Path where Java is installed>
JRE_HOME=$JAVA_HOME/jre 
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME
export JRE_HOME
export PATH

Para cargar los cambios anteriores realizados en el archivo, debe ejecutar el siguiente comando:

source ~/.profile
source /etc/environment
source /etc/profile

cosas posteriores

1. Agregar plataforma: plataforma iónica agregar android (Tenga en cuenta que debe ejecutar este comando sin sudo)

2. Si aún recibe un error en el comando anterior, haga lo siguiente: (aquí appName = helloWorld)

    cd ..
    sudo chmod -R 777 helloWorld
    cd helloWorld 
    ionic platform add android
    If you are still getting the error then remove ".cordova" folder from the home directory of your PC.

3. Para ejecutar la aplicación en su emulador de Android: ionic run android

¡Gracias!

  • Gracias Nikhil, también funcionó para mí. Después de probar muchas cosas, funcionó con los pasos anteriores que proporcionó 🙂

    –Rajeev Jayaswal

    7 de diciembre de 2017 a las 12:56

  • Terminé teniendo un problema de ‘bucle de inicio de sesión’ después de agregar las variables de Java y Android al /etc/environment. Afortunadamente, pude eliminar eso del inicio de sesión del terminal (ctrl + alt + F3) y ahora el inicio de sesión es normal.

    – Harry

    26 de abril de 2019 a las 14:54


avatar de usuario
Jalaleddin Hosseini

Tuve este problema antes.
Necesitas agregar sdks\tools y sdks\build-tools a la ruta de su entorno.

avatar de usuario
bocyrill

Para aquellos que tienen una edición SDK portátil en Windows, simplemente agreguen las 2 siguientes rutas a su sistema.

F:\ADT_SDK\sdk\platforms
F:\ADT_SDK\sdk\platform-tools

Esto funcionó para mí.

  • Me pregunto por qué mi respuesta fue rechazada. ¿Es posible tener la razón de esta acción?

    – BoCyrill

    11 de diciembre de 2016 a las 23:47

  • porque no estás diciendo cómo agregarlos?

    – Florian Lauterbach

    25 de octubre de 2017 a las 13:59

  • Exacto, no especificaste como hacer ese proceso.

    – Anuj

    5 de enero de 2018 a las 10:11

avatar de usuario
bsheps

11 de abril de 2019

Ninguna de las respuestas anteriores resolvió mi problema, por lo que quería incluir una solución actual (a partir de abril de 2019) para las personas que usan Ubuntu 18.04. Así es como resolví la pregunta anterior…

  1. Instalé el SDK de Android desde el sitio web, y ponerlo en esta carpeta: /usr/lib/Android/
  2. Busque dónde está instalado el SDK y la versión. En mi caso fue aquí:

    /usr/lib/Android/Sdk/build-tools/28.0.3

    Nota: estoy usando la versión 28.0.3, su versión puede diferir.

  3. Agregar ANDROID_HOME a la ruta del entorno. Para hacer esto, abra /etc/environment con un editor de texto:

    sudo nano /etc/environment

    Agregar una línea para ANDROID_HOME para su versión y ruta específicas. En mi caso fue:

    ANDROID_HOME="/usr/lib/Android/Sdk/build-tools/28.0.3"

  4. Finalmente, obtenga el entorno actualizado con: source /etc/environment

    Confirme esto intentando: echo $ANDROID_HOME en la terminal Debería obtener la ruta de su variable recién creada.

    Una nota adicional sobre el abastecimiento, tuve que reiniciar mi computadora para que el terminal VScode reconociera mis cambios. Después del reinicio, se configuró el entorno y no he tenido ningún problema desde entonces.

  • Me pregunto por qué mi respuesta fue rechazada. ¿Es posible tener la razón de esta acción?

    – BoCyrill

    11 de diciembre de 2016 a las 23:47

  • porque no estás diciendo cómo agregarlos?

    – Florian Lauterbach

    25 de octubre de 2017 a las 13:59

  • Exacto, no especificaste como hacer ese proceso.

    – Anuj

    5 de enero de 2018 a las 10:11

avatar de usuario
Diego Salguero

Ejecutar: sudo gedit ~/.bashrc agregar

JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export JAVA_HOME
PATH=$PATH:$JAVA_HOME
export PATH
export ANDROID_HOME=~/Android/Sdk 
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

y

source ~/.bashrc

¿Ha sido útil esta solución?