PDA

Ver la Versión Completa : Esto es un error ?


MortadeloComic
22/10/14, 11:59:09
Hola.

Estoy utilizando un:

view.setX(0);

Para posicionar un ImageView y el android studio me subraya en rojo lo de "setX", si lo sobrevuelo con el ratón me dice "Call requires API level 11 (current min is 8): android.view.View#setX". Sin embargo puedo compilar y mi app funciona perfectamente.

El archivo build.gradle lo tengo así:
android {
compileSdkVersion 20
buildToolsVersion "20.0.0"

defaultConfig {
minSdkVersion 8
targetSdkVersion 20
versionCode 1
versionName "1.0"

Entonces, ¿es un error o no es un error?, si es un error, ¿como lo arreglo?

kriogeN
22/10/14, 13:29:22
Técnicamente si es un error, porque tu aplicación permites que se ejecute en Froyo (API 8), pero estás usando una función que requiere HoneyComb (API 11).

A ti te funciona porque el móvil donde lo estás probando será ICS o superior, pero si lo descarga alguien con Froyo o GB le saltará un "NotSuchMethodError".

¿Formas de arreglarlo?

Si la función no es vital para que la app funcione, controlar en que API se está ejecutando la app y si es inferior a 11 no ejecutarla.

Si la función es vital para la app, puedes usar NineOldAndroids, que es una librería para animaciones de View de HoneyComb en versiones anteriores.