2015-09-23 5 views
31

Sto provando a sviluppare la mia prima app react-nativeAndroid. Quando eseguoReact Native: target con stringa hash 'android-X' non trovata

sudo react-native run-android 

ottengo il seguente errore

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. 

ho 24.3.3 sotto /usr/local/Cellar/android-sdk con tutte le API-23 pacchetti installati

enter image description here

mio android/app/build.gradle dice

compileSdkVersion 23 
buildToolsVersion "23.0.0" 

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

Quando provo $ANDROID_HOME, si dice -bash: /usr/local/Cellar/android-sdk/24.3.3: is a directory.

Ho anche aggiunto local.properties sotto android/app/ e ha aggiunto sdk.dir=/usr/local/Cellar/android-sdk/24.3.3

mi sto perdendo qualcosa?

+0

Potresti per favore approfondire come farlo? Sto avendo lo stesso identico problema e ho provato tutto senza successo. Si prega di dare un'occhiata al mio post [qui] (http://stackoverflow.com/questions/36778085/unable-to-build-react-native-app-on-android-device-failed-to-find-target-with -h) e aiuto se puoi. – Frosty619

risposta

9

si deve puntare ANDROID_HOME alla directory padre di piattaforme e platform-tools così /usr/local/Cantina/android-sdk

+0

Potresti per favore approfondire come farlo? Sto avendo lo stesso identico problema e ho provato tutto senza successo. Si prega di dare un'occhiata al mio post [qui] (http://stackoverflow.com/questions/36778085/unable-to-build-react-native-app-on-android-device-failed-to-find-target-with -h) e aiuto se puoi. – Frosty619

+0

@ Frosty619 Una delle cose che mi ha buttato fuori era che stavo lavorando su Android Studio e supponevo che i file SDK sarebbero stati salvati nella stessa directory dei file di Studio. Non è così, e anche se l'SDK Path è elencato proprio sopra l'SDK Manager, l'ho perso completamente. – Brendan

10

tuo $ ANDROID_HOME dovrebbe puntare /usr/local/android-sdk e sarebbe la directory padre di piattaforme e platform-tools

Gradle cercherà di individuare strumenti dir nella seguente posizione: $ANDROID_HOME/platform/android-23 modo verificare che avete gli strumenti installati lì se la cartella android-23 non è presente all'interno $ ANDROID_HOME/platform /, si prega di installare Android 6.0 (API23)

+0

Ho fatto un tentativo. Non ha funzionato. –

+1

Quale parte della mia risposta hai provato? Hai verificato che '$ ANDROID_HOME/platform/android-23' esiste? – kzzzf

+0

come mai indicano punti diversi (24.3.3 e Android-23)? –

0

riprova installare Android 6.0 Livello (Marshmallow) API 23

ho appena fatto e funziona per me

android 6.0 (Marshmallow) api level 23

2

Quello che ho fatto è stato modificare l'obiettivo su cui è stata compilata la mia domanda. Per fare questo modificare il file android/app/build.gradle sul vostro progetto e modificare la seguente:

compileSdkVersion 24 
buildToolsVersion "24.0.2" 

Questo dovrebbe corrispondere ciò che avete installato senza richiedere scaricare un'altra versione API.

+0

Questo ha funzionato per me, ma ho anche dovuto cambiare la dipendenza 'com.android.support: appcompat-v7' alla versione corretta (che ho trovato [qui] (https://developer.android.com/topic/libraries /support-library/revisions.html). –

+0

Inoltre, tieni presente che lo farai per qualsiasi libreria che richiede l'esecuzione di qualsiasi build di piattaforma. – Eldelshell

0

Ho seguito le istruzioni React Native Getting Started e il mio ANDROID_HOME e il PERCORSO aveva ragione, ma stavo ancora ricevendo questo errore.

La soluzione era installare "Android 6.0 (Marshmallow)" da questa schermata (senza cliccare "Mostra Dettagli Package"):

0

ho risolto questo problema, e appena sostituito export ANDROID_HOME=/usr/local/Cellar/android-sdk da export ANDROID_HOME=/usr/local/Cellar/android-sdk/24.4.1_1

android sdk

0

Nessuno dei le soluzioni sopra hanno funzionato per me, lavorando su un'app nativa reattiva generata con Ignite. Infine, ho aperto il progetto su Android Studio, invece di fare tutto tramite la riga di comando, e sono spuntati un sacco di errori. all'interno di Android Studio s ho risolto questo problema per me.

È necessario il percorso corretto impostato per ANDROID_HOME perché funzioni. Ho installato Android SDK con brew, quindi il mio percorso era /usr/local/opt/android-sdk.