Mantén la atención ya que en esta noticia vas a encontrar el resultado que buscas.Esta división fue probado por nuestros expertos para garantizar la calidad y exactitud de nuestro contenido.
Solución:
compilarSdkVersion
El compileSdkVersion
es la versión de la API con la que se compila la aplicación. Esto significa que puede usar las funciones de la API de Android incluidas en esa versión de la API (así como en todas las versiones anteriores, obviamente). Si intenta usar las funciones de API 16 pero establece compileSdkVersion
a 15, obtendrá un error de compilación. si configuras compileSdkVersion
a 16, aún puede ejecutar la aplicación en un dispositivo API 15 siempre que las rutas de ejecución de su aplicación no intenten invocar ninguna API específica de API 16.
targetSdkVersion
El targetSdkVersion
no tiene nada que ver con cómo se compila su aplicación o qué API puede utilizar. El targetSdkVersion
se supone que indica que ha probado su aplicación en (presumiblemente hasta e incluyendo) la versión que especifica. Esto es más como una certificación o aprobación que le está dando al sistema operativo Android como una pista sobre cómo debe manejar su aplicación en términos de características del sistema operativo.
Por ejemplo, como dice la documentación:
Por ejemplo, establecer este valor en “11” o superior permite que el sistema aplique un nuevo tema predeterminado (Holo) a su aplicación cuando se ejecuta en Android 3.0 o superior…
El sistema operativo Android, en tiempo de ejecución, puede cambiar la forma en que se estiliza o ejecuta su aplicación en el contexto del sistema operativo en función de este valor. Hay algunos otros ejemplos conocidos que están influenciados por este valor y es probable que esa lista solo aumente con el tiempo.
A todos los efectos prácticos, la mayoría de las aplicaciones querrán establecer targetSdkVersion
a la última versión publicada de la API. Esto garantizará que su aplicación se vea lo mejor posible en los dispositivos Android más recientes. Si no especifica el targetSdkVersion
por defecto es el minSdkVersion
.
Como guía de una sola línea:
minSdkVersion <= targetSdkVersion <= compileSdkVersion
Idealmente:
minSdkVersion (lowest possible) <= targetSdkVersion == compileSdkVersion (latest SDK)
Lea más de esta gran publicación de Ian Lake
El compileSdkVersion
debe ser la versión estable más reciente. El targetSdkVersion
debe ser completamente probado y menor o igual a compileSdkVersion
.