Android studio: no se pudo encontrar el objetivo android-18

94

Tengo un problema con Android Studio 0.2.3.

Cuando ejecuto mi proyecto, la compilación se detiene y aparece un mensaje que dice:

Gradle: Error de ejecución para la tarea ': AppName : compileDebugAidl'.
> no se pudo encontrar el objetivo android-18

aunque he instalado la plataforma SDK de Android 4.3 (API 18) e intenté reinstalar todo el SDK. También agregué la ANDROID_HOMEvariable en las variables del sistema.

¿Cuál parece ser la fuente de este error?

RobertoAV96
fuente
¿Cuál es su objetivo mínimo para el proyecto?
Dave Alperovich
Android 2.3.3 (API 10)
RobertoAV96
1
¡La configuración de la variable ANDROID_HOME en mi .bash_profile en mi ubicación sdk de Android Studio (donde descargué v18) solucionó esto por mí!
Daniel Smith
Tenía signos diacríticos en la ruta de inicio de mi usuario, esto ayudó: stackoverflow.com/a/53994123/5242995
Martin Široký

Respuestas:

118

Creo que es posible que no tenga instalado el SDK de Android-18. Vaya a Herramientas> Android> SDK Manager y verifique si está instalado Android 4.3 (API 18).

Calvin Li
fuente
10
De hecho, cuando tuve el problema, se instaló el SDK de Android-18, pero creo que Android Studio no lo detectó. Lo resolví desinstalando y reinstalando SDK y Studio.
RobertoAV96
3
Cuando recibí un error similar, solo reiniciar Android Studio fue suficiente en lugar de una reinstalación completa.
Code-Apprentice
1
Reiniciar el mac fue lo único que permitió a IntelliJ ver los SDK recién instalados por mí.
codeulike
50

Resolví el problema cambiando el compileSdkVersionen el archivo Gradle.build de 18 a 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.+'
}
RobertoAV96
fuente
buen trabajo. Creo que se habría logrado lo mismo si avanzaras en tu objetivo mínimo. De hecho, probablemente no funcionaría con 2.3.3
Dave Alperovich
3
Esto realmente no es una solución al problema, especialmente si está intentando utilizar funciones disponibles solo en mayores de 18 años
Daniel Smith
¿Cómo se hace que utilice el último SDK en su lugar? Tengo un problema similar con esta biblioteca: github.com/devunwired/custom-view-examples , y aunque he realizado pasos similares, aparece este error.
desarrollador de Android
10

PASO 1) Inicie Android SDK Manager

Con el androidcomando algo como a continuación,

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

PASO 2) Encuentra API 18

ingrese la descripción de la imagen aquí

PASO 3) Seleccione Android 4.3 (API 18) e instale los paquetes.

prayagupd
fuente
5

Lo que funcionó para mí en Android Studio (0.8.1):

  1. Haga clic derecho en el nombre del proyecto y abra Configuración del módulo
  2. Verificar ubicaciones de SDK SDK
  3. Verifique las versiones de Gradle y del complemento (revise las sugerencias de mensajes de error para saber cuál es la versión adecuada) Gradke
  4. En el módulo de la aplicación, configure Compile SDK Version en android-L (más reciente)
  5. Establezca la versión de Build Tools en el valor más grande disponible (en mi caso, 20.0.0) Construir

Estos cambios a través de la interfaz de usuario hacen los cambios equivalentes representados en otras respuestas, pero es una mejor manera de proceder porque al cerrar, todos los archivos apropiados (actuales y futuros) se actualizarán automáticamente (lo cual es útil cuando se enfrentan a los muchos lugares donde pueden ocurrir problemas ).

NB: Es muy importante revisar el Registro de eventos y tener en cuenta que Android Studio proporciona mensajes útiles sobre formas alternativas de resolver estos problemas.

Tommie C.
fuente
3

Gracias RobertoAV96.

Eres mi heroe. Pero no es suficiente. En mi caso, cambié tanto compileSdkVersion como buildToolsVersion. Ahora funciona. Espero que esto ayude

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')
       }
   }
Hoa Hoang
fuente
2

Si tuvo el problema, abrió el administrador de SDK, instaló las actualizaciones solicitadas, regresó a Android Studio y tuvo el problema nuevamente, SE RECOMIENDA REINICIAR ANDROID STUDIO antes de intentar cualquier otra cosa.

Gradle se ejecutará automáticamente y es probable que su problema haya terminado. Es muy posible que se le diga que instale el paquete SDK TOOLS apropiado, que se encuentra en su SDK MANAGER en la segunda pestaña (los sdk no son lo mismo que las herramientas sdk, son paquetes complementarios).

Ni siquiera necesita buscar el paquete de herramientas, si hace clic en el enlace debajo del mensaje de error, Android Studio debería llamar a SDK Manager para instalar el paquete automáticamente.

Reinicie Android Studio nuevamente y debería estar en funcionamiento mucho más rápido que si intentara soluciones alternativas.

REGLA DEL PULGAR> reinicia tu aplicación antes de jugar con opciones y configuraciones.

tony gil
fuente
1

Consulte el archivo local.properties en su proyecto de Studio. Lo más probable es que la propiedad sdk.dir apunte a la carpeta incorrecta si ha establecido / configurado un sdk de Android anterior desde la era anterior al estudio. Esta fue la solución en mi caso.

Toni Menzel
fuente
0

Tuve el mismo problema al probar Android Studio. Ya tenía proyectos ejecutándose en el ADT con el SDK 18. No es necesario piratear los archivos de manifiesto.

Arreglado por:

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

Si no tiene el ADT instalado y solo desea el SDK, parece que una buena solución es instalar todo y luego apuntar Android Studio al SDK empaquetado.

cd pathtobundle

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

descomprimir * .zip

Como dijo otra persona, es posible que deba ejecutar SDK Manager para instalar los paquetes deseados antes de ejecutar Studio.

dturvene
fuente
0

Tuve un problema similar cuando tenía instalados Eclipse, Android Studio y el SDK de Android independiente (el problema radicaba en que AVD Manager no podía encontrar las imágenes de destino). Había estado usando Eclipse para el desarrollo de Android, pero me mudé a Android Studio y rápidamente descubrí que Android Studio no podía encontrar mis AVD creados anteriormente.

El problema podría residir en que Android Studio está buscando su propio SDK de Android (que se encuentra en C: \ Users \ username \ AppData \ Local \ Android \ android-studio \ sdk) y no un SDK independiente previamente instalado, que yo había instalado en C: \ adt \ sdk.

Cambiar el nombre de la carpeta SDK de Android Studio, en C: \ Users ... (solo cambiarle el nombre, en caso de que se rompa) y luego crear un enlace simbólico entre la ubicación del SDK de Android Studio y un SDK de Android independiente soluciona este problema.

También utilicé Link Shell Extension ( http://schinagl.priv.at/nt/hardlinkshellext/linkshellextension.html ) solo para eliminar el tedio de la creación de enlaces simbólicos.

deltafalcon
fuente
0

Esto también sucederá si ha escrito, compileSdkVersion = 22por ejemplo, (como se usa en el "nuevo nuevo" sistema de compilación de Android) en lugar de compileSdkVersion 22.

nmr
fuente
0

Puede resolver el problema cambiando la compileSdkVersion en el archivo Grandle.build de 18 a cualquier SDK que esté instalado ... BUTTTTT

  1. Si está intentando volver en versiones de SDK como 18 a 17, no puede usar la función disponible en 18 o 18+

  2. Si está migrando su proyecto (Eclipse a Android Studio), entonces, por supuesto, no tiene el archivo build.gradle en su proyecto Eclipse existente

Por lo tanto, la única solución es asegurarse de que la versión del SDK esté instalada o no, a la que se dirige, si no, instalar.

Error: Causa: no se pudo encontrar el destino con la cadena hash 'android-19' en: C: \ Users \ setia \ AppData \ Local \ Android \ sdk

Gaurav Setia
fuente
0

El destino con la cadena hash 'android-18' corresponde al nivel 18 del SDK. Debe instalar el SDK 18 desde el administrador del SDK.

Shreyas
fuente