versiones pie oreo developer caracteristicas android

pie - Android: aparece el error "Error de fusión de manifiesto" después de actualizar a una nueva versión de gradle



android versiones (13)

Cambié todas las versiones de la biblioteca de soporte a 25.3.1 y trabajé como un encanto:

compile ''com.android.support:appcompat-v7:25.3.1'' compile ''com.android.support:design:25.3.1''

También necesita cambiar compileSdkVersion y targetSdkVersion a 25:

compileSdkVersion 25 targetSdkVersion 25

Después de aceptar actualizar el proyecto a la nueva versión de gradle, aparece este error:

Error:Execution failed for task '':app:processDebugManifest''. Manifest merger failed : Attribute meta-data#android.support.VERSION@value value=(26.0.0-alpha1) from [com.android.support:cardview-v7:26.0.0-alpha1] AndroidManifest.xml:24:9-38 is also present at [com.android.support:design:25.3.1] AndroidManifest.xml:27:9-31 value=(25.3.1). Suggestion: add ''tools:replace="android:value"'' to <meta-data> element at AndroidManifest.xml:22:5-24:41 to override.

¿Como puedó resolver esté problema? Este es el archivo build.gradle mi aplicación:

android { compileSdkVersion 25 buildToolsVersion "25.0.2" defaultConfig { applicationId "com.sample.bookReader" minSdkVersion 16 targetSdkVersion 25 versionCode 1 versionName "1.0" } ... } dependencies { compile fileTree(include: [''*.jar''], dir: ''libs'') compile ''com.android.support:multidex:+'' compile ''com.android.support:appcompat-v7:26.0.0-alpha1'' compile ''com.android.support:cardview-v7:26.0.0-alpha1'' compile ''com.android.support:design:25+'' compile ''com.jakewharton:butterknife:8.2.1'' apt ''com.jakewharton:butterknife-compiler:8.2.1'' ... }

Y este es el build.gradle del proyecto:

buildscript { repositories { jcenter() } dependencies { classpath ''com.android.tools.build:gradle:2.3.1'' classpath ''com.neenbedankt.gradle.plugins:android-apt:1.8'' } } allprojects { repositories { jcenter() maven { url "https://www.jitpack.io" } } } task clean(type: Delete) { delete rootProject.buildDir }

¿Cómo soluciono este error mientras mantengo los cambios realizados al actualizar la versión de Gradle?


El error para mí fue:

Manifest merger failed : Attribute meta-data#android.support.VERSION@value value=(26.0.2) from [com.android.support:percent:26.0.2] AndroidManifest.xml:25:13-35 is also present at [com.android.support:support-v4:26.1.0] AndroidManifest.xml:28:13-35 value=(26.1.0). Suggestion: add ''tools:replace="android:value"'' to <meta-data> element at AndroidManifest.xml:23:9-25:38 to override.

La solución para mí estaba en el archivo Gradle de mi proyecto. Necesitaba agregar mi versión de com.google.gms: google-services.

Estaba usando la versión 3.1.1:

classpath ''com.google.gms:google-services:3.1.1

Y el error se resolvió después de que lo coloqué en la versión 3.2.1:

classpath ''com.google.gms:google-services:3.2.1

Acababa de actualizar todas mis bibliotecas a la última, incluida la v27.1.1 de todas las bibliotecas de soporte y la v15.0.0 de todas las bibliotecas de Firebase cuando vi el error.


Está utilizando varias versiones de las bibliotecas de soporte de Android:

compile ''com.android.support:appcompat-v7:26.0.0-alpha1'' compile ''com.android.support:cardview-v7:26.0.0-alpha1'' compile ''com.android.support:design:25+''

Dos son 26.0.0-alpha1 , y uno está usando 25+ .

Elija una versión concreta y úsela para las tres. Como su compileSdkVersion no es O , use 25.3.1 para las tres bibliotecas, lo que da como resultado:

compile ''com.android.support:appcompat-v7:25.3.1'' compile ''com.android.support:cardview-v7:25.3.1'' compile ''com.android.support:design:25.3.1''


He actualizado el antiguo proyecto de Android para Wear OS. Recibí este mensaje de error al compilar el proyecto:

Manifest merger failed : Attribute meta-data#android.support.VERSION@value value=(26.0.2) from [com.android.support:percent:26.0.2] AndroidManifest.xml:25:13-35 is also present at [com.android.support:support-v4:26.1.0] AndroidManifest.xml:28:13-35 value=(26.1.0). Suggestion: add ''tools:replace="android:value"'' to <meta-data> element at AndroidManifest.xml:23:9-25:38 to override.

Mi build.gradle for Wear contiene estas dependencias:

dependencies { implementation fileTree(dir: ''libs'', include: [''*.jar'']) implementation ''com.google.android.support:wearable:2.4.0'' implementation ''com.google.android.gms:play-services-wearable:16.0.1'' compileOnly ''com.google.android.wearable:wearable:2.4.0''}

SOLUCION :

Agregar la implementation ''com.android.support:support-v4:28.0.0'' en las dependencias resolvió mi problema.


Intente eliminar los metadatos y reconstruir el proyecto.


Lo resuelvo poniendo esto al final del módulo de mi aplicación build.gradle:

configurations.all { resolutionStrategy.eachDependency { DependencyResolveDetails details -> def requested = details.requested if (requested.group == ''com.android.support'') { if (!requested.name.startsWith("multidex")) { details.useVersion ''26.0.0'' } } } }


Me pasa lo mismo. Consulte Gradle -> Build Gradle -> y asegúrese de que la compatibilidad coincida tanto en las líneas de compilación "app compat" como "support design", deben tener la misma versión.

Luego, para estar súper seguro de que se lanzará sin problemas, vaya a Archivo -> Estructura del proyecto -> aplicación y verifique en la pestaña la propiedad de la versión de Herramientas de compilación, debe ser la misma que su línea de compilación de soporte, por si acaso la versión del SDK de destino como 25 también en la pestaña Sabores.

dependencies { compile fileTree(include: [''*.jar''], dir: ''libs'') androidTestCompile(''com.android.support.test.espresso:espresso- core:2.2.2'', { exclude group: ''com.android.support'', module: ''support-annotations'' }) *compile ''com.android.support:appcompat-v7:25.3.1''* compile ''com.android.support.constraint:constraint-layout:1.0.2'' testCompile ''junit:junit:4.12'' *compile ''com.android.support:design:25.3.1''* }

Eso es lo que hice y trabajé. ¡Buena suerte!


No estoy usando diferentes versiones de bibliotecas y obtuve el mismo error, sucedió después de eliminar buildToolsVersion en AS RC 1, pero agregar tools:node="replace" hizo el truco, solo agregue esto a su manifest.xml dentro de <application ..../> bloque:

<meta-data tools:node="replace" android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />


Ponga esto al final de su módulo de aplicación build.gradle:

configurations.all { resolutionStrategy.eachDependency { DependencyResolveDetails details -> def requested = details.requested if (requested.group == ''com.android.support'') { if (!requested.name.startsWith("multidex")) { details.useVersion ''25.3.0'' } } } }

Crédito a Eugen Pechanec


Puede averiguar qué biblioteca depende de una versión incorrecta de la biblioteca de soporte y excluirla así:

compile (''com.stripe:stripe-android:5.1.1'') { exclude group: ''com.android.support'' }

stripe-android en mi caso.


Se aceptan las respuestas, pero una cosa que también podría hacer es definir las bibliotecas a partir de la estructura de su proyecto. Lo que puedes hacer es:

  1. Comenta todas las bibliotecas en las que viene el problema
  2. Ir a la estructura de tu proyecto
  3. Agregue bibliotecas desde allí y se sincronizará automáticamente y el problema desaparecerá.
  4. Si el problema persiste, intente mirar desde el registro de errores que biblioteca exige después de seguir los 3 pasos anteriores.

Lo que sucede es que las bibliotecas predefinidas ahora están apagadas, ahora estoy tomando el appcompat: 26.0.0-alpha1 usa la versión anterior de las cosas cuando agrega algo nuevo e intenta resolverlo con las cosas viejas. Cuando lo agregue desde la estructura de su proyecto, agregará lo mismo pero con las nuevas cosas para resolverlo. Tu problema se resolvería.



  • Actualice su biblioteca de soporte a la última versión

  • Abra el Manifest File y agréguelo al archivo de manifiesto

  • <uses-sdk tools:overrideLibrary="android.support.v17.leanback"/>

  • Y agregue para la vista de reciclaje en >> build.gradle Module app :

  • compile ''com.android.support:recyclerview-v7:25.3.1''

  • Y haga clic en: Sync Now