La fusión de manifiesto falló con varios errores en Android Studio
Por lo tanto, soy un principiante en Android y Java. Acabo de empezar a aprender. Mientras estaba experimentando con intención hoy, incurrí en un error.
Error:Execution failed for task ':app:processDebugManifest'. > Manifest merger failed with multiple errors, see logs
Encontré algunas soluciones aquí y traté de implementarlas, pero no funcionó.
- Java.lang.IllegalMonitorStateException: objeto no bloqueado por el hilo antes de esperar ()
- Default Schedulers para rxjava en Android
- Cadena de confianza de Android SSL con certificados intermedios (Apache HttpClient 4.X)
- Obtener dinámicamente elementos estirables por ID
- ¿Por qué android.app.Activity no es abstracto por diseño?
Este es mi build.gradle:
apply plugin: 'com.android.application' android { compileSdkVersion 23 buildToolsVersion "23.0.0" defaultConfig { applicationId "com.example.rohan.petadoptionthing" minSdkVersion 10 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:23.0.0' }
Este es mi AndroidManifest:
<?xml version="1.0" encoding="utf-8"?>
package="com.example.rohan.petadoptionthing" > <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".Second" /> <activity android:name=".third"/> <activity android:name=".MainActivity"/> </application>
Esta es mi primera semana con la codificación, lo siento si esto es una cosa realmente tonta. Estoy realmente nuevo en esto y no encontrar ningún otro lugar para pedir. Lo siento si rompí alguna regla
- No se puede crear el controlador dentro de hilo que no ha llamado Looper.prepare () en el diálogo de diálogo de alerta
- NullPointerException con aceleración de hardware activada?
- Selector de color de Android para incluirlo en la actividad
- SimpleDateFormat da error API
- Vida útil de una variable estática en Android
- Firebase cláusula WHERE múltiple en la consulta
- El botón de retroceso de Android no vuelve a la actividad anterior
- El proveedor de ubicación fusionado no obtiene ubicación a menos que GPS esté activado
Quite <activity android:name=".MainActivity"/>
de su archivo mainfest. Como ya lo ha definido como:
<activity android:name=".MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>
Por lo tanto, archivo Manifiesto muestra ambigüedad.
Abra el manifiesto de la aplicación ( AndroidManifest.xml
), haga clic en Merged Manifest
.Check image
Usted puede ver el error en la columna derecha, tratar de resolver el error.It puede ayudar a alguien con el mismo problema.
Yo también estaba enfrentando los mismos problemas, y después de mucha investigación encontró la solución:
- Su versión min sdk debe ser la misma que la de los módulos que está utilizando, por ejemplo: su módulo min sdk versión es 14 y su aplicación sdk versión min es 9 Debe ser el mismo.
- Si la versión de compilación de la aplicación y los módulos no son las mismas. De nuevo debe ser lo mismo ** En resumen, su archivo
build.gradle
aplicación y el manifiesto debe tener las mismas configuraciones **- No hay duplicidad como los mismos permisos agregados en el archivo de manifiesto dos veces, la misma actividad menciona dos veces.
- Si ha eliminado cualquier actividad de su proyecto, también debe eliminarla de su archivo de manifiesto.
- A veces es debido a etiqueta, icono, etc etiqueta de archivo de manifiesto:
A) Agregue la línea
xmlns:tools
en la etiqueta de manifiesto.B) Añadir
tools:replace=
otools:ignore=
en la etiqueta de la aplicación.
Ejemplo:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.slinfy.ikharelimiteduk" xmlns:tools="http://schemas.android.com/tools" android:versionCode="1" android:versionName="1.0" > <application tools:replace="icon, label" android:label="myApp" android:name="com.example.MyApplication" android:allowBackup="true" android:hardwareAccelerated="false" android:icon="@drawable/ic_launcher" android:theme="@style/Theme.AppCompat" > </application> </manifest>
Al considerar los puntos anteriores en mente, usted se deshará de este problema irritante.
Además de las soluciones disponibles, compruebe esto también.
Si has establecido android:allowBackup="false"
en tu AndroidManifest.xml
entonces puede haber un conflicto para android:allowBackup="true"
en otras dependencias.
Solución
Como se sugiere en @CLIFFORD PY, cambie a Merged Manifest
en su AndroidManifest.xml
. Android Studio le sugerirá que agregue tools:replace="android:allowBackup"
en <application />
en su AndroidManifest.xml
.
Yo estaba enfrentando el mismo problema y acabo de añadir una línea en mi manifest.xml y funcionó para mí.
tools:replace="android:allowBackup,icon,theme,label">
Agregue esta línea bajo
<application android:name=".MyApplication" android:allowBackup="true" android:icon="@drawable/launcher" android:label="@string/app_name" android:largeHeap="true" android:screenOrientation="portrait" android:supportsRtl="true" android:theme="@style/AppThemecustom" tools:replace="android:allowBackup,icon,theme,label">
Espero que ayude.
Generalmente se produce cuando tienes errores en tu manifiesto. Abra AndroidManifest.xml .Haga clic en la pestaña de manifiesto fusionada. Los errores se pueden ver allí. También incluyen sugerencias mencionadas allí. Cuando tuve un problema similar al importar com.google.android.gms .maps.model.LatLng, me sugirió incluir herramientas: overrideLibrary = "com.google.android.gms.maps" en la etiqueta de la aplicación y la compilación fue correcta.
-
En
AndroidManifest.xml
:- En la aplicación, agregue
tools:replace="android:icon, android:theme
y - En la raíz del manifiesto, agregue
xmlns:tools="http://schemas.android.com/tools
- En la aplicación, agregue
-
En
build.gradle
:- En root, agregue
useOldManifestMerger true
- En root, agregue
Como novato de Android Studio, en mi caso, había trasladado un proyecto existente de Eclipse a Android Studio y encontré que había una definición duplicada de una actividad dentro de mi Manifest.xml que no había sido recogido por Eclipse se mostró como Un error Gradle.
Encontré esto accediendo a la consola de Gradle (parte inferior derecha de la pantalla).
Durante los últimos días también estaba pasando por el mismo tema. Pero después, un montón de investigación finalmente encontré una solución para esto.
Para solucionar este problema, lo que debe hacer es:
1. Compruebe si el archivo build.gradle de su proyecto y el archivo build.gradle del módulo contienen las mismas versiones de todas las dependencias.
2. Asegúrese de que compileSdkVersion de su proyecto, buildToolsVersion , minSdkVersion y targetSdkVersion coincide con el de los módulos o bibliotecas que ha agregado al proyecto.
compileSdkVersion 25 buildToolsVersion "25.0.0" defaultConfig { applicationId "com.example.appname" minSdkVersion 16 targetSdkVersion 25 versionCode 22 versionName "2.0.3" }
Espero que esto ayude.
Si después de agregar un módulo de biblioteca de Android y obtiene este error.
Puedes solucionarlo simplemente eliminando el android:label="@string/app_name"
de AndroidManifest.xml
de tu Módulo de la Biblioteca de Android
Sucedió conmigo dos veces cuando refractor (Renombrar con SHIFT + F6) el nombre de un campo en nuestros archivos y le pide que lo cambie por todas partes y nosotros sin prestar atención cambie el nombre en todas partes. Por ejemplo, si tiene un nombre de variable "id" en su clase Java y lo cambia con SHIFT + F6. Si no prestas atención al siguiente cuadro de diálogo que te preguntará donde más se va a cambiar el id y te marca comprobar todo lo que va a cambiar todo el ID en sus archivos de diseño del nuevo valor.
Esto es muy simple error sólo se producen cuando se define cualquier actividad llamada dos veces en el archivo mainifest.xml Ejemplo como
<activity android:name="com.futuretech.mpboardexam.Game" ></activity> //and launcher also------like that //solution:use only one