Saltar al contenido

El ícono heredado no se muestra cuando se usa el ícono adaptable

Este team de redactores ha pasado mucho tiempo buscando para darle soluciones a tu duda, te ofrecemos la soluciones y nuestro objetivo es serte de mucha apoyo.

Solución:

Tuve el mismo problema y lo resolví cambiando el nombre de mi mipmap-anydpi directorio a mipmap-anydpi-v26.

Aparentemente el ic_launcher.xml El archivo confunde las versiones anteriores de Android, y esto lo oculta de todos menos de O. En cualquier caso, mis íconos ahora funcionan en todas las versiones (hasta SDK 11, al menos).

La solución es tener mipmap-anydpi-v26/ic_launcher.xml para iconos adaptables aplicables al nivel de API 26 y superior y para otros niveles de API poner ic_launcher.png (Nota: No ic_launcher.xml) en todas las carpetas mimpap.


Explicación:

Aquí está el problema básico. mipmap-anydpi tener prioridad sobre todos los demás mipmap-*. Así que si el recurso se encuentra en mipmap-anydpi siempre tendrá preferencia. Ahora mipmap-anydpi-v26 hay un filtro encima de esto que dice recursos de mipmap-anydpi-v26 siempre se seleccionará independientemente de la densidad de los dispositivos solo si el nivel de API es 26 o más (Oreo).

Ahora te manifiestas tiene android:icon="@mipmap/ic_launcher"

Si su dispositivo tiene un nivel de API 26 o superior, Android elegirá usar mipmap-anydpi-v26/ic_launcher.xml y todo funciona bien.

El problema ocurre cuando el nivel de API es inferior a 26. Las estadísticas de Android buscan un recurso llamado ic_launcher. Nunca irá y buscará en mipmap-anydpi-v26 debido a la restricción de nivel de API. A continuación, buscaría el recurso en mipmap-anydpi y si no está allí, entonces el recurso de densidad real, por ejemplo. mipmap-mdpi.

A continuación, no puede dar ic_launcher.xml a dispositivos Android inferiores a sdk 26 porque no sabe qué son los iconos adaptables.

Entonces la solución es tener mipmap-anydpi-v26/ic_launcher.xml para iconos adaptables aplicables al nivel de API 26 y superior y para otros niveles de API poner ic_launcher.png (Nota: No ic_launcher.xml) en todas las carpetas mimpap.

Me he enfrentado al mismo problema y lo resolví de la siguiente manera.

Ponga su ic_launcher.xml y ic_launcher_round.xml debería estar en mipmap-anydpi-v26 (asegúrese de que no debe tener ic_launcher.png/jpg o ic_launcher_round.png/jpg en la misma carpeta).

Ponga su ic_launcher.png debería estar en mipmap-hdpi/mdpi/xhdpi/xxhdpi/xxxhdpi (asegúrese de que no debe tener ic_launcher.xml y ic_launcher_round.xml en esta misma carpeta).

Al hacer esto, no obtendrá ningún error al construir/ejecutar el proyecto.

Espero que ayude a alguien que tiene el mismo problema…

valoraciones y reseñas

Al final de la artículo puedes encontrar las interpretaciones de otros administradores, tú incluso tienes la habilidad dejar el tuyo si lo deseas.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *