studio personalizar para iconos icon generador crear bar app aplicaciones android android-studio android-icons

android - personalizar - El icono heredado no se muestra cuando se usa un icono adaptativo



menu toolbar android (3)

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

Explicación :

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

Ahora tu manifiesto 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 funcionará bien.

El problema ocurre cuando el nivel de API es inferior a 26. Estadísticas de Android que 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í, el recurso de densidad real, por ejemplo, mipmap-mdpi .

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

Por lo tanto, la solución es tener mipmap-anydpi-v26/ic_launcher.xml para los iconos adaptativos aplicables para el 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 de mimpap.

Acabo de convertir el ícono de mi aplicación para que sea compatible con los íconos adaptables de android o usando Image Asset Studio en android studio.

cuando ejecuto mi proyecto ahora en mi dispositivo con API 25, obtengo el ícono verde predeterminado de Android y no mi ícono.

este es mi manifiesto

<application android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" android:allowBackup="false" android:roundIcon="@mipmap/ic_launcher_round" tools:replace="allowBackup" tools:ignore="GoogleAppIndexingWarning">

Y estos son los archivos que creó el estudio de imágenes de activos.

¿Es solo un error de Android Studio o me perdí algo?


Si aún no funciona, compruebe su esquema XML, si utiliza la importación automática de Android Studio, no funcionará, debería ser / apk / res / android. Aquí está el código:

<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android"> <background android:drawable="@mipmap/ic_launcher_background"/> <foreground android:drawable="@mipmap/ic_launcher_foreground"/> </adaptive-icon>


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

Aparentemente, el archivo ic_launcher.xml confunde las versiones anteriores de Android, y esto lo oculta de todos menos de O. De todos modos, mis iconos ahora funcionan en todas las versiones (hasta el SDK 11, al menos).