Не удалось найти переменную окружения ANDROID_HOME

Я пытаюсь создать ионно-андроидный проект, и у меня установлен Android-sdk.

Установленные пакеты SDK-менеджера

Название моего проекта - myApp.I успешно добавили платформу android для myApp. Но когда я пытаюсь построить проект

~/myApp$ sudo ionic build android

результат

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.

см. переменную ANDROID_HOME и 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

Я видел почти такие же вопросы о переполнении стека, но никто не работает для меня. Что-то не так с моей конфигурацией android-sdk? Как я могу построить этот проект?

Ответ 1

Возможно, вы захотите подтвердить правильность настройки среды разработки.

Цитата из spring.io:

Настройка среды разработки Android

Прежде чем вы сможете создавать приложения для Android, вы должны установить Android SDK. Установка Android SDK также устанавливает AVD Manager, графический пользовательский интерфейс для создания и управления Android Virtual Устройства (AVD).

  • На веб-сайте Android загрузите правильную версию Android SDK для вашей операционной системы.

  • Разархивируйте архив в выбранное вами место. Например, на Linux или Mac вы можете поместить его в корень своего каталога пользователя. Видеть Android Разработчикивеб-сайт для дополнительной информации об установке.

  • Настройте переменную среды ANDROID_HOME на основе местоположения Android SDK. Кроме того, рассмотрите возможность добавления ANDROID_HOME/tools и ANDROID_HOME/platform-tools к вашему PATH.

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

Окна

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

Загрузка Android SDK не включает определенные платформы Android. Чтобы запустить код в этом руководстве, вам необходимо загрузить и установить последней платформы SDK. Вы делаете это с помощью Android SDK и AVD Менеджер, который вы установили в предыдущем разделе.

  • Откройте окно Android SDK Manager:

    android
    

    Примечание. Если эта команда не открывает Android SDK Manager, то ваш путь не настроен правильно.

  • Установите флажок Сервис.

  • Установите флажок для последнего Android SDK.

  • В папке Дополнительно установите флажок для Поддерживающей библиотеки Android.

  • Нажмите кнопку Установить пакеты..., чтобы завершить загрузку и установку.

    Примечание.. Вы можете установить все доступные обновления, но что это займет больше времени, так как каждый уровень API является большой загрузкой.

Ответ 2

В Linux

Прежде всего установите ANDROID_HOME в файл .bashrc

Запустить команду

sudo gedit ~/.bashrc

установите путь andoid sdk, где вы установили

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

для перезагрузки команды запуска файла

source ~/.bashrc

Теперь проверьте установленную платформу, запустите команду

ionic platform

Выход

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

если андроид уже установлен, необходимо снова и снова удалить и установить

ionic platform rm android
ionic platform add android

Если вы уже не установили, добавьте платформу Android

ionic platform add android

Пожалуйста, убедитесь, что вы добавили платформу Android без команды sudo

если вы все еще получаете ошибку при добавлении android platfrom, как показано ниже

Ошибка: EACCES: разрешение отклонено, откройте '/home/ubuntu/.cordova/lib/npm_cache/cordova-android/6.0.0/package/package.json'

Пожалуйста, перейдите в/home/ubuntu/и удалите папку .cordova оттуда

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

Теперь снова запустите следующую команду

ionic platform add android

после успешного добавления платформы вы сможете построить andoid в ионной форме.

Спасибо

Ответ 3

Ниже приведены шаги, которые необходимо выполнить, чтобы успешно настроить ваш Ионный проект для работы с эмулятором Android:

  • Создайте Ионный проект: вкладки имени приложения для ионного запуска (для темы табуляции)
  • cd appName
  • ионная установка sass
  • Чтобы запустить приложение в Интернете: ионная услуга

Чтобы добавить платформу Android:

Приоритетные вещи

Сначала вам нужно настроить переменные среды. Для этого вам необходимо рассмотреть 3 файла:

1. ~/.profile (для настройки переменных при каждом открытии терминала или при загрузке компьютера):

//Код, который нужно добавить в последний

set PATH so it includes user 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/environment (для установки переменных среды):

//Все содержимое файла

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./И т.д./профиль

//Код, который необходимо добавить на последнем

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

Для загрузки указанных выше изменений в файл вам необходимо выполнить следующую команду:

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

Постоянные события

1. Добавить платформу: ионная платформа добавить android (обратите внимание, что вам нужно запустить эту команду без sudo)

2. Если вы все еще получаете ошибку в приведенной выше команде, выполните следующие действия: (здесь 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. Чтобы запустить приложение в своем эмуляторе Android: ионный бег android

Спасибо!

Ответ 4

Для тех, у кого есть портативная версия SDK для Windows, просто добавьте следующий путь к вашей системе.

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

Это сработало для меня.

Ответ 5

У меня была эта проблема раньше.
Вам необходимо добавить sdks\tools и sdks\build-tools в путь к вашей среде.

Ответ 6

Выполнить: sudo gedit ~/.bashrc add

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

а также

source ~/.bashrc

Ответ 7

11 апреля 2019 г.

Ни один из ответов выше не решил мою проблему, поэтому я хотел включить текущее решение (по состоянию на апрель 2019 года) для людей, использующих Ubuntu 18.04. Вот как я решил вопрос выше...

  1. Я установил Android SDK с веб-сайта и поместил его в эту папку: /usr/lib/Android/
  2. Найдите, где установлен SDK и версию. В моем случае это было здесь:

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

    Примечание: что я использую версию 28.0.3, ваша версия может отличаться.

  3. Добавьте ANDROID_HOME в путь к среде. Для этого откройте /etc/environment с помощью текстового редактора:

    sudo nano/etc/environment

    Добавьте строку для ANDROID_HOME для вашей конкретной версии и пути. В моем случае это было:

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

  4. Наконец, поставьте обновленную среду с помощью: source/etc/environment

    Подтвердите это, попробовав: echo $ANDROID_HOME в терминале. Вы должны получить путь к вашей новой переменной.

    Еще одно замечание о поиске источников. Мне пришлось перезагрузить компьютер, чтобы терминал VScode распознал мои изменения. После перезагрузки среда была установлена, и у меня не было никаких проблем с тех пор.

Ответ 8

Пришел сюда из Google, ища ту же самую проблему, и потратил 4 часа, чтобы понять, что может быть неправильным. И теперь я чувствую себя очень глупо, публикуя этот ответ. В моем случае SDK, JDK, JRE, Ant и все остальное было установлено и работало за день до этого.

Но только один конкретный проект дал мне эту проблему. Этот элемент находился под "C:\Users\Name\Documents" .

Вскоре я понял, что я запускаю cmd как обычный пользователь, как только я выбираю " Запуск от имени администратора", все началось.

Совет. Всегда внимательно изучайте расположение проекта.

Ответ 9

Я столкнулся с этой проблемой на компьютере Windows 7: завершение работы компьютера при работе с ионной службой (я предполагаю, что это проблема, которая повредила все)

Удалите node ПОЛНОСТЬЮ и переустановите все в новой node копии

Ответ 10

Это решило мою проблему. Добавьте ниже к вашему системному пути

PATH_TO_android\платформы

PATH_TO_android\платформенные инструменты

Ответ 11

В Windows, если вы запускаете эту команду из терминала кода VS и даже после настройки всех переменных среды (т.е. инструментов-инструментов, платформ, инструментов) она не работает, пытаясь запустить эту же команду из внешнего терминала cmd. В моем случае даже после запуска нового терминала с кодом VS он не смог принять обновленный путь к среде.

Это работало, когда я запускал ту же команду из Windows cmd.