Подтвердить что ты не робот

React Native: цель с хэш-строкой 'android-X' не найдена

Я пытаюсь разработать свое первое приложение react-native Android. Когда я запустил

sudo react-native run-android

Я получаю следующую ошибку

JS server already running.
Building and installing the app on the device (cd android && ./gradlew installDebug)...

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring project ':app'.
> failed to find target with hash string 'android-23' in: /usr/local/Cellar/android-sdk

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 4.981 secs
Could not install the app on the device, see the error above.

У меня есть 24.3.3 под /usr/local/Cellar/android-sdk со всеми установленными пакетами API-23

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

Мой android/app/build.gradle говорит

compileSdkVersion 23
buildToolsVersion "23.0.0"

defaultConfig {
    applicationId "com.awesomeandroid"
    minSdkVersion 16
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"
    ndk {
        abiFilters "armeabi-v7a", "x86"
    }
}

Когда я пытаюсь $ANDROID_HOME, он говорит -bash: /usr/local/Cellar/android-sdk/24.3.3: is a directory.

Я также добавил local.properties под android/app/ и добавил sdk.dir=/usr/local/Cellar/android-sdk/24.3.3

Я что-то пропустил?

4b9b3361

Ответ 1

Вам нужно указать ANDROID_HOME в родительский каталог платформ и инструментов платформы, поэтому /usr/local/Cellar/Android-SDK

Ответ 2

Ваш $ANDROID_HOME должен указывать на /usr/local/android-sdk, и это будет родительский каталог платформ и платформенных инструментов

Gradle попытается найти инструмент dir в следующем местоположении: $ANDROID_HOME/platform/android-23, так что убедитесь, что у вас установлены ваши инструменты, если папка android-23 отсутствует внутри $ANDROID_HOME/platform/, пожалуйста, установите Android 6.0 ( API23)

Ответ 3

Что я сделал, это изменить цель, с которой было скомпилировано приложение. Для этого отредактируйте файл android/app/build.gradle в своем проекте и измените следующее:

compileSdkVersion 24
buildToolsVersion "24.0.2"

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

Ответ 4

попробуйте установить уровень авиалинии android 6.0 (Marshmallow) уровня 23

Я только что сделал и работает для меня

android 6.0 (Marshmallow) api level 23

Ответ 5

Я последовал инструкциям React Native Getting Started, и мои ANDROID_HOME и PATH были прав, но я все еще получал эту ошибку.

Решением было установить "Android 6.0 (Marshmallow)" с этого экрана (без нажатия "Показать сведения о пакете" ):

Ответ 6

😂 я решил эту проблему и просто заменил export ANDROID_HOME=/usr/local/Cellar/android-sdk на export ANDROID_HOME=/usr/local/Cellar/android-sdk/24.4.1_1

android sdk

Ответ 7

Ни одно из вышеперечисленных решений не работало для меня, работая над реактивным родным приложением, созданным с помощью Ignite. Наконец, я открыл проект в Android Studio, вместо того чтобы делать все через командную строку, и появилось множество ошибок. Исправление ошибок один за другим в Android Studio решило эту проблему для меня.

Для этого вам нужен правильный путь для ANDROID_HOME. Я установил sroid sroid с brew, поэтому мой путь был /usr/local/opt/android-sdk.