Cambiar el nivel de API de Android Studio


414

Quiero cambiar la versión mínima del SDK en Android Studio de la API 12 a la API 14. He intentado cambiarla en el archivo de manifiesto, es decir,

<uses-sdk
    android:minSdkVersion="14"
    android:targetSdkVersion="18" />

y reconstruir el proyecto, pero sigo teniendo el IDE de Android Studio arrojando algunos errores. Supongo que tengo que configurar el SDK mínimo en 'propiedades del proyecto' o algo similar para que el IDE reconozca el cambio, pero no puedo encontrar dónde se hace esto en Android Studio.


1
¿Qué es eso algunos errores? no podemos ayudarte sin logcat
Arash GM

1
No son errores de compilación. Es el IDE que muestra un subrayado rojo cuando intento usar 'GridLayout' en el diseño xml, es decir, que me dice que se requiere un nivel mínimo de API 14. Por lo tanto, debe haber un lugar en Android Studio donde pueda establecer el nivel mínimo de API después de haber creado el proyecto. He visto publicaciones similares para Eclipse, pero no para Android Studio.
James B

¿Has instalado el paquete SDK API level 14?
Ramaral

Si comienzo un nuevo proyecto y selecciono API nivel 14 desde el principio, no tengo problemas para desarrollar en Android Studio, es decir, debo tener instalado API Level 14 SDK. Sin embargo, si simplemente quiero actualizar un proyecto existente para usar API 14 como mínimo, no puedo determinar en qué parte del IDE de la GUI de Android Studio le digo que haga esto.
James B

Publique su Logcat. y para cambiar el MinSDKVersionpresente es la solución más simple, que ya han intentado u .. iechange enManifest
Mitesh Shah

Respuestas:


582

Cuando desee actualizar su minSdkVersion en un proyecto existente ...

  1. Actualizaciónbuild.gradle(Module: app) : asegúrese de que esté debajo de Gradle Script y NO lo esté build.gradle(Project: yourproject).

Un ejemplo de build.gradle:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 28
    buildToolsVersion "28.0.2"

    defaultConfig {
        applicationId "com.stackoverflow.answer"
        minSdkVersion 21
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}

dependencies {
    androidTestCompile 'junit:junit:4.12'
    compile fileTree(dir: 'libs', include: ['*.jar'])
}
  1. Botón sincronizar gradle (actualizar todos los proyectos gradle también funciona)

Para principiantes en Android Studio, el "botón de sincronización de Gradle" se encuentra en Herramientas -> Android -> Proyecto de sincronización con archivos de Gradle "Reconstruir proyecto" Generar -> Reconstruir proyecto

  1. Proyecto de reconstrucción

Después de actualizar el build.gradle 's minSdkVersion, debe hacer clic en el botón para sincronizar el archivo gradle ("Sincronizar proyecto con archivos Gradle"). Eso borrará el marcador.

La actualización de manifest.xml , por ejemplo, para eliminar cualquier referencia a los niveles de SDK en el archivo de manifiesto, ya no es necesaria en Android Studio.


77
¿Mi proyecto build.gradle está vacío? ¿Cuál es la sintaxis para actualizar? --- Vaya, hay dos archivos build.gradle. Encontré el que está en -> src tiene las versiones, etc.
mobibob

44
Utilizando este consejo, logré sincronizar las cosas, pero tuve que SALIR de Android Studio antes de que la compilación estuviera libre de errores. Realicé muchos pequeños pasos, así que no sé cuál fue realmente el paso necesario.
mobibob

55
¿Por qué lo han hecho tan doloroso? parece recordar en eclipse que solo tuve que hacer esto en un lugar ...
Dean Wild

1
@DeanWild en Android Studio también está en un solo lugar. Olvídate de los niveles de API en el archivo de manifiesto.
Sotti

2
Para principiantes en Android Studio, el "botón de sincronización de sincronización" se encuentra en Tools -> Android -> Sync Project with Gradle Files"Proyecto de reconstrucción"Build -> Rebuild Project
CGR

169

Para usuarios de Android Studio:

  1. haga clic derecho en el directorio de la aplicación
  2. elija la opción "configuración del módulo"
  3. cambia la plataforma ADK como lo que necesitas
  4. Haga clic en Aplicar

El gradle reconstruirá el proyecto automáticamente.


3
La solución anterior dada es, para mí, el mejor camino a seguir. Deje que la herramienta haga todos los cambios necesarios para que usted mismo juegue con diferentes archivos, arriesgándose a atornillar u olvidar detalles importantes.
GeertVc

2
Esto no funciona en Studio 0.8.2. Puede cambiar la configuración y presionar aplly, pero Studio ignora esto. <br/> Solución: - Cierre Android Studio - Edite "/app/build.gradle" - cambie la entrada SDK-MinVersion - reinicie las sincronizaciones de Android Studio Gradle automáticamente
Martin

En Studio 1.4, debe buscar en la pestaña "Sabores". Ver la respuesta de priyankvex.
Yannick

En Studio 3.5, debe hacer clic en la pestaña "Configuración predeterminada". La pestaña Sabores ya no parece existir.
Suma ninguno

135

Como ahora Android Studio es estable, hay una manera fácil de hacerlo.

  1. Haga clic derecho en su archivo de proyecto
  2. Seleccione "Abrir configuración del módulo"
  3. Vaya a la pestaña "Sabores".

ingrese la descripción de la imagen aquí

  1. Seleccione la versión mínima de SDK de la lista desplegable

PD: Aunque esta pregunta ya fue respondida, Android Studio ha cambiado un poco con su lanzamiento estable. Por lo tanto, una forma sencilla y directa ayudará a cualquier nuevo buscador de respuestas a aterrizar aquí.


1
Editar los archivos gradle no funcionó para mí, pero esto sí. ¡Gracias!
Al0x

1
Esto ha cambiado nuevamente: la pestaña "Sabores" ya no existe. En su lugar, en el paso 3, en el área Configuración del proyecto, haga clic en Módulos y luego use el cuadro desplegable Nivel del proyecto para seleccionar la versión API. Esto no es lo mismo que configurar la versión mínima de API, sino más bien la versión que se utilizará para compilar la aplicación.
hamx0r

Esta debe ser la respuesta aceptada. Menos la versión más reciente de Android Studio
Vivekanand

3
Solo obtengo la API 23 en el menú desplegable ... Necesito API 10
Reign.85

1
¿un poco? Este IDE de Fking cambia mucho entre versiones, causando muchas interrupciones en la ejecución del código antiguo. Muy muy patético en comparación con el legado de compatibilidad con versiones anteriores que ejemplifica Microsoft.
user30478

10

En Android Studio puede presionar fácilmente:

  1. Ctrl+ Shift+ Alt+ S.
  2. Si tiene una versión más nueva de android studio, presione primero la aplicación. Luego, continúe con el paso tres de la siguiente manera.
  3. Se abrirá una ventana con un montón de opciones.
  4. Ve a Sabores y eso es todo lo que necesitas

También puede cambiar el versionCodede su aplicación allí.


6

En build.gradlecambio minSdkVersion 13a minSdkVersion 8Eso es todo lo que necesitas hacer. Resolví mi problema solo haciendo esto.

defaultConfig {
    applicationId "com.example.sabrim.sbrtest"
    minSdkVersion 8
    targetSdkVersion 20
    versionCode 1
    versionName "1.0"
}

6

De acuerdo con esta respuesta , simplemente no incluye minsdkversion en el manifest.xml, y el sistema de compilación usará los valores del archivo build.gradle y colocará la información en el apk final.

Debido a que el sistema de compilación necesita esta información de todos modos, esto tiene sentido. No debería necesitar definir estos valores dos veces.

Solo tiene que sincronizar el proyecto después de cambiar el build.gradlearchivo, pero Android Studio 0.5.2 muestra una barra de estado amarilla en la parte superior de la ventana del editor build.gradle para ayudarlo

También tenga en cuenta que hay al menos dos build.gradlearchivos: uno maestro y otro para la aplicación / módulo. El que hay que cambiar está en la aplicación / módulo, ya incluye una propiedad minSdkVersionen un proyecto recién generado.


5

Si usted está teniendo problemas especificando el objetivo SDK de Google API en lugar de la base de la plataforma SDK simplemente cambiar el compileSdkVersion 19acompileSdkVersion "Google Inc.:Google APIs:19"


5

Para la última versión de Android Studio v2.3.3 (11 de octubre de 2017):
1. Haga clic Viewen la barra de menú
2. Haga clic en Abrir configuración del módulo
3. Abra la Flavorspestaña
4. Elija la Sdkversión mínima que necesita
Ventana de estructura del proyecto IDE 6. Haga clic en Aceptar


4

Además de actualizar el manifiesto, actualice también el build.gradlearchivo del módulo (aparece en el panel del proyecto justo debajo del manifiesto; si no hay una minSdkVersionclave, está buscando el incorrecto, ya que hay un par). Una reconstrucción y las cosas deberían estar bien ...


3

En el estudio de Android, abra build.gradle y edite la siguiente sección:

defaultConfig {
    applicationId "com.demo.myanswer"
    minSdkVersion 14
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"
}

aquí puede cambiar minSdkVersion de 12 a 14


1

No es necesario cambiar la minSdkVersion en el manifiesto. Si lo cambia en el archivo de compilación de Gradle, como se ve a continuación, logra lo que necesita hacer.

defaultConfig {
   applicationId "com.demo.myanswer"
   minSdkVersion 14
   targetSdkVersion 23
   versionCode 1
   versionName "1.0"
}

0

Para mí, lo que funcionó fue: (clic derecho) proyecto-> herramientas de Android-> borrar marcadores de pelusa. Aunque, por alguna razón, el Manifiesto volvió al antiguo nivel mínimo de API (más bajo), pero después de volver a cambiarlo al nuevo nivel de API (más alto) no hubo un subrayado de error rojo y el proyecto ahora usa el nuevo nivel mínimo de API.

Editar: Lo siento, veo que estabas usando Android Studio, no Eclipse. Pero supongo que hay un similar 'marcadores claros de pelusa' en Studio en algún lugar y podría resolver el problema.


0

Gradle Scripts ->
build.gradle (Módulo: aplicación) ->
minSdkVersion (Your min sdk version)


0

Archivo> Estructura del proyecto> Módulos, puede cambiarlo desde allí

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.