Studio Android - Impossibile trovare Android-18 di destinazione


94

Ho un problema con Android Studio 0.2.3.

Quando eseguo il mio progetto, la build si interrompe e viene visualizzato un messaggio che dice:

Gradle: esecuzione non riuscita per l'attività ": AppName : compileDebugAidl".
> impossibile trovare il target android-18

anche se ho installato la piattaforma SDK di Android 4.3 (API 18) e ho provato a reinstallare tutto l'SDK. Ho anche aggiunto la ANDROID_HOMEvariabile nelle variabili di sistema.

Quale sembra essere la fonte di questo errore?


qual è il tuo obiettivo minimo per il progetto?
Dave Alperovich

Android 2.3.3 (API 10)
RobertoAV96

1
Le impostazioni della variabile ANDROID_HOME nel mio .bash_profile sulla mia posizione sdk di Android Studio (dove ho scaricato la v18) hanno risolto il problema per me!
Daniel Smith il

Avevo segni diacritici nel percorso home dell'utente, questo mi ha aiutato: stackoverflow.com/a/53994123/5242995
Martin Široký

Risposte:


118

Penso che potresti non avere installato Android-18 sdk. Vai su Strumenti> Android> SDK Manager e controlla se è installato Android 4.3 (API 18).


10
Infatti, quando ho avuto il problema, è stato installato Android-18 sdk, ma penso che Android Studio non lo abbia rilevato. Ho risolto disinstallando e reinstallando SDK e Studio.
RobertoAV96

3
Quando ho ricevuto un errore simile, è stato sufficiente riavviare Android Studio piuttosto che una reinstallazione completa.
Code-Apprentice

1
Il riavvio del Mac è stata l'unica cosa che ha permesso a IntelliJ di vedere gli SDK appena installati per me.
codeulike

50

Ho risolto il problema modificando il compileSdkVersionnel Gradle.build file di 18-17.

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.5.+'
    }
}
apply plugin: 'android'

repositories {
    mavenCentral()
}

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 10
        targetSdkVersion 18
    }
}

dependencies {
    compile 'com.android.support:support-v4:13.0.+'
}

buon lavoro. Penso che lo stesso sarebbe stato ottenuto se avessi avanzato il tuo obiettivo minimo. In effetti, probabilmente non funzionerebbe con un 2.3.3
Dave Alperovich il

3
Questa non è davvero una soluzione al problema, soprattutto se stai cercando di utilizzare le funzionalità disponibili solo in 18+
Daniel Smith

Come si fa a utilizzare semplicemente l'ultimo SDK? Ho un problema simile con questa libreria: github.com/devunwired/custom-view-examples e anche se ho eseguito passaggi simili, ottengo questo errore.
sviluppatore Android

10

PASSAGGIO 1) Avvia Android SDK Manager

Con androidcomando qualcosa come sotto,

$ /usr/local/android-studio/sdk/tools/android

PASSAGGIO 2) Trova API 18

inserisci qui la descrizione dell'immagine

PASSAGGIO 3) Selezionare Android 4.3 (API 18) e installare i pacchetti.


5

Cosa ha funzionato per me in Android Studio (0.8.1):

  1. Fare clic con il tasto destro sul nome del progetto e aprire Impostazioni modulo
  2. Verifica le posizioni dell'SDK SDK
  3. Verificare le versioni Gradle e Plugin (rivedere i suggerimenti del messaggio di errore per la versione corretta da utilizzare) Gradke
  4. Sul modulo dell'app, imposta la versione dell'SDK di compilazione su android-L (più recente)
  5. Imposta la versione di Build Tools sul valore più grande disponibile (nel mio caso 20.0.0) Costruire

Queste modifiche tramite l'interfaccia utente apportano le modifiche equivalenti rappresentate in altre risposte ma è un modo migliore di procedere perché alla chiusura, tutti i file appropriati (attuali e futuri) verranno aggiornati automaticamente (il che è utile quando ci si confronta con i molti luoghi in cui possono verificarsi problemi ).

NB: è molto importante esaminare il registro eventi e notare che Android Studio fornisce messaggi utili su modi alternativi per risolvere tali problemi.


3

Grazie RobertoAV96.

Sei il mio eroe. Ma non è abbastanza. Nel mio caso, ho modificato sia compileSdkVersion che buildToolsVersion. Adesso funziona. Spero che questo aiuto

buildscript {
       repositories {
           mavenCentral()
       }
       dependencies {
          classpath 'com.android.tools.build:gradle:0.6.+'
       }
   }
   apply plugin: 'android'

   dependencies {
       compile fileTree(dir: 'libs', include: '*.jar')
   }

   android {
       compileSdkVersion 19
       buildToolsVersion "19"

       sourceSets {
           main {
               manifest.srcFile 'AndroidManifest.xml'
               java.srcDirs = ['src']
               resources.srcDirs = ['src']
               aidl.srcDirs = ['src']
               renderscript.srcDirs = ['src']
               res.srcDirs = ['res']
               assets.srcDirs = ['assets']
           }

           // Move the tests to tests/java, tests/res, etc...
           instrumentTest.setRoot('tests')
           // Move the build types to build-types/<type>
           // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ..
           // This moves them out of them default location under src/<type>/... which would
           // conflict with src/ being used by the main source set.
           // Adding new build types or product flavors should be accompanied
           // by a similar customization.
           debug.setRoot('build-types/debug')
           release.setRoot('build-types/release')
       }
   }

2

Se hai avuto il problema, hai aperto il gestore SDK, installato gli aggiornamenti richiesti, sei tornato ad Android Studio e hai avuto di nuovo il problema, SI CONSIGLIA DI RIAVVIARE ANDROID STUDIO prima di provare qualsiasi altra cosa.

Gradle verrà eseguito automaticamente e probabilmente il tuo problema sarà risolto. Molto probabilmente ti verrà detto di installare il pacchetto SDK TOOLS appropriato, che si trova nel tuo SDK MANAGER nella seconda scheda (gli sdk non sono gli stessi degli strumenti sdk, sono pacchetti complementari).

Non è nemmeno necessario cercare il pacchetto degli strumenti, se fai clic sul collegamento sotto il messaggio di errore, Android Studio dovrebbe chiamare SDK Manager per installare automaticamente il pacchetto.

Riavvia di nuovo Android Studio e dovresti essere attivo e funzionante molto più velocemente rispetto a se avessi tentato soluzioni alternative.

REGOLA DEL POLLICE> riavvia l'applicazione prima di modificare opzioni e configurazioni.


1

Controlla il file local.properties nel tuo progetto Studio. È probabile che la proprietà sdk.dir punti alla cartella sbagliata se avevi impostato / configurato un precedente sdk Android dell'era pre-studio. Questa era la soluzione nel mio caso.


0

Ho avuto lo stesso problema quando ho provato Android Studio. Avevo già progetti in esecuzione su ADT in SDK 18. Non è necessario hackerare i file manifest.

Risolto da:

esporta ANDROID_HOME = pathtobundle / adt-bundle-linux-x86_64-20130729 / sdk

Se non hai installato l'ADT e desideri solo l'SDK, sembra che una buona soluzione sia installare tutto e quindi indirizzare Android Studio solo all'SDK in pacchetto.

cd pathtobundle

wget http://dl.google.com/android/adt/adt-bundle-linux-x86_64-20130729.zip

unzip * .zip

Come ha detto qualcun altro, potrebbe essere necessario eseguire SDK Manager per installare i pacchetti desiderati prima di eseguire Studio.


0

Ho avuto un problema simile quando avevo installato Eclipse, Android Studio e Android SDK autonomo (il problema si trovava dove AVD Manager non riusciva a trovare le immagini di destinazione). Stavo usando Eclipse per lo sviluppo Android, ma sono passato ad Android Studio e ho subito scoperto che Android Studio non riusciva a trovare i miei AVD creati in precedenza.

Il problema potrebbe potenzialmente risiedere nel fatto che Android Studio sta esaminando il proprio SDK Android (che si trova in C: \ Users \ nomeutente \ AppData \ Local \ Android \ android-studio \ sdk) e non un SDK autonomo precedentemente installato, che avevo installato in C: \ adt \ sdk.

Rinominare la cartella SDK di Android Studio, in C: \ Users ... (rinominarlo solo, nel caso in cui le cose si interrompano) quindi creare un collegamento simbolico tra la posizione di Android Studio SDK e un Android SDK autonomo risolve questo problema.

Ho anche usato l'estensione Link Shell ( http://schinagl.priv.at/nt/hardlinkshellext/linkshellextension.html ) solo per togliere la noia dalla creazione di collegamenti simbolici.


0

Ciò accadrà anche se hai scritto compileSdkVersion = 22ad es. (Come usato nel "nuovo nuovo" sistema di build Android) invece di compileSdkVersion 22.


0

Puoi risolvere il problema cambiando compileSdkVersion nel file Grandle.build da 18 a wtever SDK è installato ..... BUTTTTT

  1. Se stai tentando di tornare alle versioni SDK come dalla 18 alla 17, non puoi utilizzare la funzione disponibile in 18 o 18+

  2. Se stai migrando il tuo progetto (da Eclipse ad Android Studio), allora ovviamente non hai il file build.gradle nel tuo progetto Existed Eclipse

Quindi, l'unica soluzione è assicurarsi che la versione dell'SDK sia installata o meno, a cui si sta mirando, altrimenti installarla.

Errore: causa: impossibile trovare la destinazione con la stringa hash "android-19" in: C: \ Users \ setia \ AppData \ Local \ Android \ sdk


0

Il target con la stringa hash "android-18" corrisponde al livello 18 dell'SDK. È necessario installare l'SDK 18 dal gestore SDK.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.