used studio only missing higher error current autofillhints attribute and android xml api manifest

android - studio - Usando atributos desde el nivel de API más allá de minSdkVersion



attribute autofillhints is only used in api level 26 and higher current min is 14 (3)

Soy nuevo en el desarrollo de Android y me pregunto qué sucede si utiliza atributos en etiquetas XML desde un nivel de API superior a su minSdkVersion.

Por ejemplo, tener:

<uses-sdk android:minSdkVersion="9" android:targetSdkVersion="20" />

Y luego usando esto:

<activity android:logo="@drawable/iconwhatever"></activity>

El atributo "android: logo" es del nivel 11 de API.

En Android Studio, da el siguiente error, pero quiero saber qué podría pasar si esto queda solo:

Attribute "logo" is only used in API level 11 and higher. (Current min is 9)

Cualquier ayuda con respecto a esto sería apreciada grandemente.


En este caso, la manipulación de atributos que son API diferentes se debe realizar mediante código y no en XML.

En código, puedes tratarlo.

Por ejemplo:

if(Build.Version.SDK_INT > 10){ .... use an attribute } else{ .... use other }

Para su caso específico, utilice "icono"

<activity android:icon="@drawable/iconwhatever"></activity>


Los atributos no admitidos se ignoran de forma segura.

De la documentation SDK:

Al analizar los recursos XML, Android ignora los atributos XML que no son compatibles con el dispositivo actual. Por lo tanto, puede usar de forma segura los atributos XML que solo son compatibles con las versiones más nuevas sin preocuparse de que las versiones anteriores se rompan cuando encuentren ese código.


Para los atributos XML, es seguro usar atributos de las API más recientes (simplemente se ignorarán, ya que el analizador XML ni siquiera los buscará en versiones anteriores).