web-dev-qa-db-fra.com

ajoutez 'tools: replace = "Android: value"' à l'élément <meta-data> de AndroidManifest

Je suis un tutoriel sur le développement HeadFirst Android et des problèmes sont survenus après l’ajout: private ActionBarDrawerToggle tiroirToggle;

Le contrôle était obsolète. J'ai donc suivi les instructions sur Stack pour résoudre ce problème en ajoutant com.Android.support:appcompat-v7:26.0.0-alpha1 aux modules de l'application. Dépendances 

Mais maintenant, je reçois les erreurs de construction suivantes:

Erreur: L'exécution a échoué pour la tâche ': app: processDebugManifest'.

La fusion du manifeste a échoué: Attribut meta-data#Android.support.VERSION@value value = (25.3.1) from [com.Android.support:recyclerview-v7:25.3.1] AndroidManifest.xml: 24: 9-31 est également présent dans [com.Android.support:appcompat-v7:26.0.0-alpha1] AndroidManifest.xml: 27: 9-38 value = (26.0.0-alpha1) . Suggestion: ajoutez 'tools: replace = "Android: value"' à l'élément sur AndroidManifest.xml: 22: 5-24: 34 pour remplacer.

Voici le code:

51
D.Hodges

Le problème est que toutes les bibliothèques de support avec la même version et la version majeure doivent correspondre à la version du SDK de compilation. 

Essayez donc de forcer une version spécifique de la bibliothèque de support . Mettez ceci à la fin de votre module d'application dans 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'
            }
        }
    }
}
177
Sagar Giri

Ajoutez d’abord cette ligne à votre balise manifeste si vous n’avez pas encore:

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

Exemple:

<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
    package="com.winanainc"
    Android:versionCode="3"
    Android:versionName="1.2"
    xmlns:tools="http://schemas.Android.com/tools">

Ajoutez ensuite cette balise META dans votre application pour écraser la version de vos outils de construction. Dans ce cas, par exemple, j'ai choisi la version 25.3.1.

<application>
   ...
   ..
    <meta-data
        tools:replace="Android:value"
        Android:name="Android.support.VERSION"
        Android:value="25.3.1" />
</application>
16
DJM

Changé toutes les versions de la bibliothèque de support en 25.3.1 et fonctionna comme un charme

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

Vous devez également modifier les paramètres suivants en 25:

compileSdkVersion 25
targetSdkVersion 25
5
Darush
 <application
            Android:allowBackup="true"
            Android:icon="@mipmap/ic_launcher"
            Android:label="@string/app_name"
            Android:largeHeap="true"
            Android:supportsRtl="true"
            Android:theme="@style/AppTheme"

            >
            <meta-data
                tools:replace="Android:value"
                Android:name="Android.support.VERSION"
                Android:value="26.0.0" />
        </application>
3
DILSHAD AHMAD

Ouvrir Android Studio -> Ouvrir le fichier manifeste

Ajoutez <uses-sdk tools:overrideLibrary="Android.support.v17.leanback"/>. N'oubliez pas d'inclure aussi xmlns:tools="http://schemas.Android.com/tools", avant la balise <application>

remplacer 

compile 'com.Android.support:recyclerview-v7:+' 

par

compile 'com.Android.support:recyclerview-v7:25.3.1'

et ajouter 

compile 'com.Android.support:appcompat-v7:25.3.1'
compile 'com.Android.support:design:25.3.1'
2
Atul

Ce code a résolu mon problème

"Le problème est que toutes les bibliothèques de support ayant la même version et la même version majeure doivent correspondre à la version du SDK de compilation.

Essayez donc de forcer une version spécifique de la bibliothèque de support. Placez ceci à la fin de votre module d’application dans build.gradle. "

merci

0
M.Jalalifar
  1. Sur Android Studio -> Ouvrir le fichier manifeste
  2. Basculez vers le manifeste fusionné et vérifiez le fichier Autre manifeste.

Dans mon cas, j'utilise les fichiers de support 26.1.0 mais j'ai trouvé support-v13 = 26.0.1 enter image description here

J'ai donc ajouté implementation 'com.Android.support:support-v13:26.1.0' au fichier Gradle et le problème a été résolu.

0
mhcpan

la réponse de @sagar giri est un travail temporaire. Ce que j'ai fait pour résoudre ceci est expliqué à la fin.

Si votre dernière bibliothèque de support est installée dans le dernier studio Android et si vous disposez d'une ancienne version de bibliothèque de support dans le module d'application de gradle de construction, alors Android studio échoue en raison d'une incompatibilité de version.

Mettez à jour la dernière version de votre bibliothèque de support, corrigez les dernières modifications, telles que le changement de nom d'icônes, etc., puis reconstruisez-la.

j'espère que ça aide...

0
Boopathi T
        Add <meta-data> tag in manifest.xml file as below...


    <?xml version="1.0" encoding="utf-8"?>
    <manifest package="com.demo"
        xmlns:Android="http://schemas.Android.com/apk/res/Android"
        xmlns:tools="http://schemas.Android.com/tools">

        <uses-permission Android:name="Android.permission.INTERNET"/>

        <application
            Android:name=".MyApplication"
            Android:allowBackup="true"
            Android:icon="@mipmap/ic_launcher"
            Android:label="@string/app_name"
            Android:supportsRtl="true"
            Android:theme="@style/AppTheme">
            <activity
                Android:name=".MainActivity"
                Android:theme="@style/AppTheme">
                <intent-filter>
                    <action Android:name="Android.intent.action.MAIN"/>

                    <category Android:name="Android.intent.category.LAUNCHER"/>
                </intent-filter>
            </activity>

            **<meta-data
                tools:replace="Android:value"
                Android:name="Android.support.VERSION"
                Android:value="25.3.1" />//this 25.3.1 version should be same which we defined in the build.gradle file. i am using compileSdkVersion 25**

        </application>
 </manifest>

Travailler à coup sûr @ASK ....

0