React Native:未找到散列字符串 'android-X' 的目标

React Native : target with hash string 'android-X' not found

我正在尝试开发我的第一个 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.

我在 /usr/local/Cellar/android-sdk 下有 24.3.3 安装了所有 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

我也在android/app/下加了local.properties,加了sdk.dir=/usr/local/Cellar/android-sdk/24.3.3

我是不是漏掉了什么?

你的 $ANDROID_HOME 应该指向 /usr/local/android-sdk 并且它将是 platforms 和 platform-tools 的父目录

Gradle 将尝试在以下位置找到工具目录:$ANDROID_HOME/platform/android-23 因此,如果 $ 中不存在 android-23 文件夹,请验证您是否已将工具安装在那里ANDROID_HOME/platform/ , 请安装 Android 6.0 (API23)

您需要将ANDROID_HOME指向platforms[=21=的父目录]所以/usr/local/Cellar/android-sdk

请尝试安装 android 6.0 (Marshmallow) api 级别 23

我刚刚做了并且为我工作

我所做的是更改我的应用程序的编译目标。为此,请编辑项目中的文件 android/app/build.gradle 并修改以下内容:

compileSdkVersion 24
buildToolsVersion "24.0.2"

这应该与您安装的任何内容相匹配,无需下载另一个 API 版本。

我遵循了 React Native 入门说明,我的 ANDROID_HOME 和 PATH 是正确的,但我仍然收到此错误。

解决方案是从此屏幕安装 "Android 6.0 (Marshmallow)"(无需单击 "Show Package Details"):

我解决了这个问题,只是把 export ANDROID_HOME=/usr/local/Cellar/android-sdk 换成了 export ANDROID_HOME=/usr/local/Cellar/android-sdk/24.4.1_1

android sdk

None 上述解决方案对我有用,正在处理使用 Ignite 生成的 React 本机应用程序。最后,我在 Android Studio 中打开项目,而不是通过命令行执行所有操作,然后弹出了一堆错误。在 Android Studio 中一一修复错误为我解决了这个问题。

您确实需要为 ANDROID_HOME 设置正确的路径才能正常工作。我用brew安装了android sdk,所以我的路径是/usr/local/opt/android-sdk.

对我有什么帮助 - 我刚刚使用 Android SDK 工具

删除了所有已安装的 SDK 平台和 SDK 工具

然后 运行 再次构建,Android Studio 找到了它应该安装的内容和位置。如果您将按照此说明进行操作 - 请确保您是 运行 Android Studio 并具有足够的权限来安装所有内容。

祝您玩得愉快!希望对你有所帮助