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

时间:2015-09-23 05:45:52

标签: android react-native android-sdk-tools

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

enter image description here

我的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

我错过了什么吗?

8 个答案:

答案 0 :(得分:12)

您的$ ANDROID_HOME应该指向/usr/local/android-sdk,它将是平台和平台工具的父目录

Gradle将尝试在以下位置找到工具目录:$ANDROID_HOME/platform/android-23如果在$ ANDROID_HOME / platform /中没有安装android-23文件夹,请确认您已安装工具,请安装Android 6.0( API23)

答案 1 :(得分:10)

您需要将 ANDROID_HOME 指向平台平台工具的父目录,以便 / usr / local / Cellar / Android的SDK

答案 2 :(得分:3)

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

compileSdkVersion 24
buildToolsVersion "24.0.2"

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

答案 3 :(得分:0)

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

我刚刚做了并为我工作

android 6.0 (Marshmallow) api level 23

答案 4 :(得分:0)

我按照React Native入门说明操作,我的ANDROID_HOME和PATH是正确的,但我仍然收到此错误。

解决方案是从此屏幕安装“Android 6.0(Marshmallow)”(不点击“显示包详情”):

答案 5 :(得分:0)

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

android sdk

答案 6 :(得分:0)

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

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

答案 7 :(得分:0)

什么帮助了我-我刚刚使用Android SDK工具删除了所有已安装的SDK平台和SDK工具

Android SDK Tool

然后再次运行构建,Android Studio找到了应该安装的内容以及安装位置。如果您要遵循此说明-请确保您具有足够的权限来运行Android Studio,以安装所有内容。

玩这个问题吧!希望对您有帮助