Error de icono de Gradle de Android studio, Manifest Merger

Sigo viendo este mensaje y no estoy seguro de cómo resolverlo para siempre.

Error:(43, 9) Attribute application@icon value=(@drawable/new_app_icon) from AndroidManifest.xml:43:9 is also present at com.github.erizet.signala:signala-longpolling:0.20:7:18 value=(@drawable/ic_launcher) Suggestion: add 'tools:replace="android:icon"' to  element at AndroidManifest.xml:40:5 to override :OpenBook:processDebugManifest FAILED Error:Execution failed for task ':OpenBook:processDebugManifest'. > Manifest merger failed with multiple errors, see logs 

Intenté agregar android:replace="android:icon" a mi manifiesto incluso con mi ícono.

Traté de eliminar el android:icon="@drawable/ic_launcher de la biblioteca pero sigue volviendo cuando construyo porque es importado de maven

Algunas ideas ?

Parece ser culpa de la herramienta de fusión principal de gradle.

http://tools.android.com/tech-docs/new-build-system/user-guide/manifest-merger

Lo resolvió agregando a mi etiqueta manifest xmlns:tools="http://schemas.android.com/tools"

Luego tools:replace="android:icon,android:theme" agregadas tools:replace="android:icon,android:theme" a la etiqueta de la aplicación

Esto le dice a la fusión que use mi icono y tema de manifiesto y no de otras bibliotecas

Espero que ayude gracias

Tengo el mismo problema, lo soluciono de esta manera agregando xmlns:tools="http://schemas.android.com/tools" a la parte superior del archivo de mainfest, y agrego tools:replace="android:icon" para ver me gusta

   ///add this line .....   

tengo el mismo error, solo este código soluciona mi problema, quiero compartirlo contigo:

en Manifest.xml :

  • agregue este código en la parte superior de su archivo xml:

    xmlns:tools="http://schemas.android.com/tools"

  • Luego agregué:

    tools:replace="android:icon,android:theme,android:label,android:name" a la etiqueta de la aplicación

La respuesta de shimi_tap es suficiente. Lo que debe recordar es que solo elige lo que necesita. Elija entre {icono, nombre, tema, etiqueta}. Agregué tools:replace="android:icon,android:theme" , no funciona. Agregué tools:replace="android:icon,android:theme,android:label,android:name" , no funciona. Funciona cuando agregué tools:replace="android:icon,android:theme,android:label" . Así que averigua cuál es exactamente el conflicto en tus archivos manifiestos.

Este error también ocurre cuando el minSdk de su aplicación es más alto que el minSdk de cualquier biblioteca.

 app's minSdk >= libraries minSdk 

Simplemente agregue xmlns:tools="http://schemas.android.com/tools" a su etiqueta de manifiesto. Y luego necesita agregar tools:replace="android:icon" __BEFORE__ android:icon="@mipmap/ic_launcher" . ¡Buena suerte! :RE

OBTUVO LA SOLUCIÓN DESPUÉS DE MUCHO TIEMPO

simplemente obtenga su ic_launcher y péguelo en su carpeta de drawables,

Ve a tu manifiesto y cambia a android: icon = “@ drawable / ic_launcher”

Limpia tu proyecto y reconstruye

Espero que te ayude

Tuve este problema cambiando el ícono de drawable a mipmap.

Solo me perdí la línea

tools:replace="android:icon"

en el manifiesto

Por alguna razón, a android studio no le gusta llamar al icono de la aplicación desde la carpeta dibujable. Entonces, en ese caso, creé el directorio de recursos mipmap en la carpeta res.

Haga clic con el botón derecho en la carpeta res> nuevo> directorio de recursos android> tipo de recurso: mipmap y ahora coloque cualquier ícono allí y luego haga referencia a eso en el archivo de manifiesto. Compartiendo esto ya que este método funcionó para mí.

android: icon: @ drawable / ic_launcher “

a

android: icon = “@ mipmap / ic_launcher”

Si nada de eso funciona, cierra Android Studio. Vaya a la aplicación / src / main, abra el archivo AndroidManifest.xml en un editor de texto (como sublime), elimine / reemplace las líneas de errores, guarde y vuelva a abrir el estudio de Android.

Cuando un valor de atributo contiene un marcador de posición (ver formato a continuación), la fusión de manifiesto intercambiará este valor de marcador de posición con un valor inyectado. Los valores inyectados se especifican en build.gradle. La syntax de los valores de marcador de posición es $ {name} ya que @ está reservado para enlaces. Después de que se produjo la última fusión de archivos, y antes de que se escriba el archivo resultante del manifiesto de Android fusionado, todos los valores con un marcador de posición se intercambiarán con los valores inyectados. Se generará una rotura de comstackción si se desconoce el nombre de una variable.

de http://tools.android.com/tech-docs/new-build-system/user-guide/manifest-merger#TOC-Build-error

La respuesta de Shimi_tap es la forma correcta de solucionar el problema. Si desea utilizar la herramienta de fusión anterior, puede agregar esto al archivo build.gradle

android {useOldManifestMerger true}

Para mí, este problema ocurrió después de actualizar Google Play Services. Una de las bibliotecas que estaba usando incorporó esta biblioteca usando el “+” en su referencia gradal, como

compile 'com.google.android.gms:play-services:+'

Esto creó un problema debido a que la versión mínima dirigida por esa biblioteca era menor que la destinada a la versión actual de los Servicios de Google Play. Encontré esto simplemente mirando en los registros.

En su .gradle cambie MinSDK, por ejemplo:

  • build.gradle (Módulo: aplicación)
    • before: minSdkVersion 9
    • después: minSdkVersion 14

etc.

Intenté con toda la solución mencionada anteriormente

en Manifest.xml :

  • agregue este código en la parte superior de su archivo xml dentro de la etiqueta de manifiesto:

    xmlns:tools="http://schemas.android.com/tools"

  • Luego agregué:

    tools:replace="android:icon,android:theme,android:label,android:name" a la etiqueta de la aplicación

pero nada de eso funcionó. Necesitaba eliminar un archivo xml que estaba situado en

mipmap-anydpi-v26 / ic_launcher_round.xml

Estaba probando la aplicación en

Samsung Galaxy 8 con sistema operativo versión 8.0.0

¿es realmente una solución?