React Native android build не удалось. Местоположение SDK не найдено

У меня ошибка при запуске android

What went wrong:
A problem occurred evaluating project ':app'.  
> SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.

Ответ 1

  • Перейдите в каталог android/ вашего проекта, посвященного реагированию.
  • Создайте файл с именем local.properties с помощью этой строки:

    sdk.dir = /Users/USERNAME/Library/Android/sdk
    

    Где USERNAME - ваше имя пользователя OSX

Ответ 2

  1. Зайдите в свой React-native Project → Android
  2. Создайте файл local.properties
  3. Открыть файл
  4. вставьте свой путь Android SDK, как показано ниже

    • в Windows sdk.dir = C:\\Users\\USERNAME\\AppData\\Local\\Android\\sdk
    • в macOS sdk.dir =/Users/USERNAME/Library/Android/sdk
    • в linux sdk.dir =/home/USERNAME/Android/Sdk

Замените USERNAME своим именем пользователя

Теперь, запустите react-native run-android в своем терминале.

Ответ 3

Вы можете попробовать добавить ANDROID_PATH

export ANDROID_HOME=/Users/<username>/Library/Android/sdk/
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

Ответ 4

Откройте ~/.bash_profile и добавьте:

 export ANDROID_HOME=~/Library/Android/sdk/
 export PATH=$PATH:~/android-sdks/platform-tools/
 export PATH=$PATH:~/android-sdks/tools/

введите описание изображения здесь

Ответ 5

НЕ ОБНОВЛЕНИЕ local.properties, это, безусловно, плохая практика.

Вот как я его исправил. Добавьте в ~/.bash_profile или ~/.bashrc.

export ANDROID_HOME=/usr/local/share/android-sdk
export PATH=$ANDROID_HOME/tools:$PATH
export PATH=$ANDROID_HOME/platform-tools:$PATH
export PATH=$ANDROID_HOME/build-tools/23.0.1:$PATH

Примечание. Я использовал brew cask для установки Android SDK в соответствии с этими инструкциями.

Ответ 6

echo "sdk.dir = /Users/$(whoami)/Library/Android/sdk" > android/local.properties

Ответ 7

Если вы находитесь в escape- android/local.properties окон (добавьте обратные android/local.properties) в обратную косую черту и двоеточие в файле android/local.properties. Если его там нет, то создайте его

sdk.dir = C\:\\Android\\sdk

Ответ 8

Обновленные шаги для React Native0.58, чтобы начать работу на MAC/Unix

  • Откройте bash_profile в терминале

nano ~/.bash_profile

export ANDROID_HOME=$HOME/Library/Android/sdk

export PATH=$PATH:$ANDROID_HOME/emulator

export PATH=$PATH:$ANDROID_HOME/tools

export PATH=$PATH:$ANDROID_HOME/tools/bin

export PATH=$PATH:$ANDROID_HOME/platform-tools

Control+S to save
Control+X to exit
Y to save changes
  • Обновление изменений в терминале

source ~/.bash_profile

  • Проверить путь:

echo $PATH

  • Подтвердите, если все в порядке:

adb devices

Ответ 9

Исправление ошибок пути SDK в дистрибутивах Linux


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


Поиск SDK


Менеджер пакетов


Если вы используете пакетную JRE-установку, такую как Java 8 JRE, через пользовательский PPA в дистрибутиве на основе Debian или используете OpenJDK, скорее всего, каталог будет /usr/lib/jvm/java-8-oracle (или любую версию, которую вы выбрали). Этот путь можно найти в переменной окружения JAVA_HOME:

$ echo $JAVA_HOME
 /usr/lib/jvm/java-8-oracle

Загрузка вручную


Если вы установили загрузку Java JRE/SDK, она будет находиться там, где вы разместили эту папку, например /home/username/jdk-8u121_1.8.0 (или что-то подобное).

Сценарий установки может даже добавить SDK в /opt/java-8-oracle, но на момент написания инструкции Java Install оставляют папку в ваших руках.


Android Studio 2.2


Наконец, если вы используете Android Studio, SDK размещается там, где вы установили его для размещения файлов SDK, загружаемых через Studio SDK Manager. Перейдя в меню "Файл"> "Настройки"> "Внешний вид и поведение"> "Настройки системы"> "Android SDK", вы можете найти настройку местоположения SDK вверху с возможностью изменения, а папка по умолчанию - ~/Android/Sdk.

Android Studio SDK Path

Настройка пути SDK

Теперь, когда мы знаем, где находится SDK, настало время, чтобы сообщить об этом.


Вариант 1: Установить с помощью local.properties


Этот метод очень прост, и все, что необходимо, это создать файл local.properties в следующей папке, где Project_Folder является базой вашего приложения React-Native:

Project_Folder/Android/App

В вашем local.properties вы хотите установить переменную sdk.dir на путь вашей папки SDK:

sdk.dir=/home/username/Android/Sdk

Хотя это самый простой способ устранить проблему, это не самое лучшее, особенно если вы работаете с несколькими проектами. Для каждого проекта вам нужно будет создать этот файл для каждого проекта, и если папка изменит план изменения файла для каждого проекта local.properties.

Как только файл будет сохранен, перезапустите команду run-android с поддержкой реакции.


Вариант 2: Папки настроек с переменными окружения


Другой вариант - установить папки SDK для переменных локальной среды, которые по умолчанию ищет React-Native. Для этого добавим путь ANDROID_HOME. В качестве бонуса мы также можем добавить наши инструменты для Android в одном и том же месте. Нам нужно добавить это скорее к файлам.bash_profile или.profile в нашем домашнем каталоге, которые загружаются последними, поэтому мы можем убедиться, что ничто другое не отменяет настройки, которые мы делаем. Так как они находятся в вашем домашнем каталоге, нет необходимости редактировать с повышенными привилегиями.

**$ vim ~/.profile**  (use nano or pico if you prefer)

В файле добавьте следующие строки, заменяющие папку SDK тем, что вы нашли выше. Я буду использовать папку Android Studio в качестве примера:

export ANDROID_HOME="~/Android/Sdk"
export PATH=$PATH:~/Android/Sdk/tools:~/Android/Sdk/platform-tools

Сохраните файл, затем примените настройки профиля:

$ source ~/.profile
$ echo $ANDROID_HOME
/home/dbrown/Android/Sdk

Если папка Sdk отображается правильно, поздравляем! Повторно запустите свою команду response-native и посмотрите, как процесс сборки приложения продолжается.


Если у вас все еще есть проблемы


Если по какой-то причине вы получаете сообщение об ошибке " > не удалось найти цель с хеш-строкой" android-23 "в вашей папке /sdk/, вам нужно убедиться, что версия сборки проекта и версия SDK установлены (React -Насточные значения по умолчанию - 23.0.1). Вы можете найти версию по умолчанию в Project_Folder/android/app/build.gradle, а затем искать buildToolsVersion. Вы можете, конечно, изменить версию из этого файла или в Android Studio перейти в файл > Структура проекта для изменения SDK проекта. Я бы не предложил изменить эту версию, если вы не знаете, что делаете, иначе установите версию SDK, которую ищет проект.

Ответ 10

Для пользователей Windows

Одно простое решение - установить путь SDK к списку переменных Enviroment.

  1. Перейдем к переменным Enviromnent. (Ваш ПК> Свойства)
  2. Создать новые системные переменные
  3. Задайте имя переменной ANDROID_HOME
  4. Установите значение переменной для вашего Android Sdk Location
  5. Нажмите OK (3 раза для 3 диалоговых окон)

Замечания:

Android Android Sdk обычно находится в

C:\Users\имя_пользователя\AppData\Local\Android\Sdk

Не забудьте закрыть текущий терминал, потому что ваш терминал содержит все ваши ранее существовавшие переменные среды.

Ответ 11

В Ubuntu, где вам нужно получить SDK отдельно от Android Studio, странный путь будет работать с Android Studio, но с React Native вам нужно будет создать имя файла local.properties.

Например, inn ~/AwesomeProject/android и вставьте эту строку:
sdk.dir=/path/to/sdk/in/your/computer

Ответ 12

Вы должны написать правильный полный путь. Не используйте '~/Library/Android/sdk'

vi ~/.bashrc

export ANDROID_HOME=/Users/{UserName}/Library/Android/sdk
export PATH=${PATH}:${ANDROID_HOME}/tools
export PATH=${PATH}:${ANDROID_HOME}/platform-tools

source ~/.bashrc

Ответ 13

Зайдите в свой local.properties файл:

sdk.dir=C\:\\Users\\USERNAME\\AppData\\Local\\Android\\sdk

если формат правильный или нет

Ответ 14

Если вы используете Ubuntu, просто перейдите в каталог Android вашего проекта, local.properties за реакцию, и создайте файл с именем local.properties и добавьте к нему путь sdk android:

sdk.dir = /home/[YOUR_USERNAME]/Android/Sdk

Ответ 15

Скопируйте вашу систему в другой проект android local.properties и вставьте в папку android в проекте React-native, это сработает.

Ответ 16

Для пользователей Linux

Ваше приложение не получает путь к android-sdk, поэтому, если вы используете linux (ubuntu), вам нужно добавить файл с именем "local.properties" и сохранить его в папке android, которая создается внутри папке вашего приложения.

Вам нужно добавить строку ниже внутри файла local.properties, то есть путь к вашему android-sdk лежит внутри вашей системы внутри системы, чтобы запустить приложение.

sdk.dir=/opt/android-sdk/

сохраните и перезапустите команду response-native run-android

ИЛИ

вы можете открыть терминал, введите

sudo nano ~/.bashrc

и вставьте следующий путь в конец файла

экспортировать ANDROID_HOME = "/opt/android-sdk/"

и перезагрузите компьютер и снова запустите run-android.

Примечание. - Если вы поместите заданный путь в файл .bashrc, вам даже не нужно создавать файл local.properties.

Ответ 17

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

Я принимаю Stephen Grider React Native на Udemy, и один из студентов разместил это в лекции 50. Вставил дословно в командной строке (без учета $), конечно).

$ export "ANDROID_HOME=/usr/local/opt/android-sdk" >~/.bash_profile

Ответ 18

Лучшее решение, которое я могу найти, выглядит следующим образом:

  1. Скачайте Android Studio и SDK по вашему выбору (даже если вы считаете, что вам не нужно, чтобы он доверял мне, что вам понадобится, чтобы выпустить файл apk и некоторые ручные изменения в коде Android).
  2. "Файл"> "Создать"> "Импорт", укажите место, где вы реагируете на собственный проект андроида.
  3. Если он попросит вас загрузить какой-либо конкретный SDK, загрузите его. Он может попросить вас обновить град и т.д. Пожалуйста, продолжайте обновлять, когда это необходимо.
  4. Если у вас есть существующий Android SDK, и вы знаете версию, то все, что вам нужно сделать, это совпадение с этой версией в файле build.gradle вашего проекта Android.

Вот как выглядит файл градиента:

enter image description here

Если все наладится с настройкой вашей машины, и вы можете скомпилировать проект с помощью Android Studio, ничто не остановит вас для создания вашего приложения с помощью команды cli build android.

При таком подходе вы не только решите проблему SDK, но и решите многие проблемы, связанные с настройкой вашего компьютера для разработки Android. Импорт автоматически найдет местоположение SDK и создаст local.properties. Следовательно, вам не нужно беспокоиться о ручных вмешательствах.

Ответ 19

Если вы создаете android studio проект, вы можете видеть, что файл local.properties создается внутри корневого каталога вашего проекта. Когда вы создаете собственный проект реагирования, он не создает этот файл для вас. Таким образом, вы должны создать его вручную. И нужно добавить к нему skd dir. Поэтому создайте новый файл в папке Android (в корне). и укажите свой путь SDK следующим образом: sdk.dir=D\:\\Android\\SDK\\android_sdk_studio. Помните: удалить одиночный\с двойным. Так же, как и выше.

Ответ 20

Убедитесь, что у вас установлен соответствующий эмулятор и версия Android. Это решило проблему для меня.

Ответ 21

В вашем каталоге проектов есть папка под названием "android", и внутри нее есть файл local.properties. Удалите файл, и сборка должна успешно работать

Ответ 22

Если файл local.properties отсутствует,  просто создайте его в папке "project/android" с помощью  'sdk.dir =/Users/apple/Library/Android/sdk' и убедитесь, что ваш SDK находится в этом месте.

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

Как сохранить файл TextEdit (mac) с пользовательским расширением (.sas)?

Ответ 23

Есть два файла gradle, изменить одно внутри вашего C:\myapp\android\build.gradle, а не в родительском каталоге myapp.

Замените 23.0.1 своей версией Android Build Tool, установленной в моем случае 25.0.0

Запустите реакцию-native run-android, чтобы увидеть свое приложение в эмуляторе.

Ответ 24

Следующее в local.properties просто работало для меня на Mac OS Sierra:

sdk.dir = /usr/local/share/android-sdk

Примечание: Я использовал brew cask для установки android-sdk в соответствии с инструкциями здесь

Ответ 25

Просто откройте папку android в проекте от Android Studio. Студия Android создает необходимый файл (local.properties) и загружает версию SDK для запуска андроида.

Ответ 26

Я на Windows, и я должен был изменить путь SDK, независимо от его наличия в PATH env. переменная

sdk.dir=C:/Users/MY_USERNAME/AppData/Local/Android/Sdk

Изменен этот файл:

MyProject\android\local.properties

Ответ 27

Скопируйте вашу систему в другой проект android local.properties и вставьте в папку android проекта React-native, это сработает.

sdk.dir=C\:\\Users\\paul\\AppData\\Local\\Android\\Sdk