Gradle: l'exécution a échoué pour la tâche «: processDebugManifest»

142

Je reçois une erreur de gradation lors de la construction depuis hier - cela est venu au hasard ....

Trace de pile complète ici:

Mon projet dépend de plusieurs bibliothèques et s'est construit sans aucun problème jusqu'à hier (même avec les bibliothèques)

compile 'com.google.android.gms:play-services:3.1.36'
compile 'com.android.support:support-v4:13.0.0'
compile project(":libs:DatabaseCreationHelper")
compile project(":libs:actionbarsherlock")

Quelqu'un a une idée comment y remédier? il est venu au hasard ... Full stacktrace ici:

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':ItchyFeet:processDebugManifest'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
at org.gradle.api.internal.changedetection.state.CacheLockReleasingTaskExecuter$1.run(CacheLockReleasingTaskExecuter.java:35)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.cache.internal.DefaultCacheAccess.longRunningOperation(DefaultCacheAccess.java:179)
at org.gradle.cache.internal.DefaultCacheAccess.longRunningOperation(DefaultCacheAccess.java:232)
at org.gradle.cache.internal.DefaultPersistentDirectoryStore.longRunningOperation(DefaultPersistentDirectoryStore.java:142)
at org.gradle.api.internal.changedetection.state.DefaultTaskArtifactStateCacheAccess.longRunningOperation(DefaultTaskArtifactStateCacheAccess.java:83)
at org.gradle.api.internal.changedetection.state.CacheLockReleasingTaskExecuter.execute(CacheLockReleasingTaskExecuter.java:33)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:58)
at org.gradle.api.internal.tasks.execution.ContextualisingTaskExecuter.execute(ContextualisingTaskExecuter.java:34)
at org.gradle.api.internal.changedetection.state.CacheLockAcquiringTaskExecuter$1.run(CacheLockAcquiringTaskExecuter.java:39)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:124)
at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:112)
at org.gradle.cache.internal.DefaultPersistentDirectoryStore.useCache(DefaultPersistentDirectoryStore.java:134)
at org.gradle.api.internal.changedetection.state.DefaultTaskArtifactStateCacheAccess.useCache(DefaultTaskArtifactStateCacheAccess.java:79)
at org.gradle.api.internal.changedetection.state.CacheLockAcquiringTaskExecuter.execute(CacheLockAcquiringTaskExecuter.java:37)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:57)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:41)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:51)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:52)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:42)
at org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailure(AbstractTask.java:282)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.executeTask(DefaultTaskPlanExecutor.java:48)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.processTask(DefaultTaskPlanExecutor.java:34)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:27)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:89)
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:29)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61)
at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23)
at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:67)
at org.gradle.api.internal.changedetection.state.TaskCacheLockHandlingBuildExecuter$1.run(TaskCacheLockHandlingBuildExecuter.java:31)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:124)
at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:112)
at org.gradle.cache.internal.DefaultPersistentDirectoryStore.useCache(DefaultPersistentDirectoryStore.java:134)
at org.gradle.api.internal.changedetection.state.DefaultTaskArtifactStateCacheAccess.useCache(DefaultTaskArtifactStateCacheAccess.java:79)
at org.gradle.api.internal.changedetection.state.TaskCacheLockHandlingBuildExecuter.execute(TaskCacheLockHandlingBuildExecuter.java:29)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61)
at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23)
at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:67)
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:54)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:166)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:113)
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:81)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:64)
at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:33)
at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:24)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:35)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26)
at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:50)
at org.gradle.api.internal.Actions$RunnableActionAdapter.execute(Actions.java:171)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:201)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:174)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:170)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:139)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)
at org.gradle.launcher.Main.doAction(Main.java:48)
at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
at org.gradle.launcher.Main.main(Main.java:39)
at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:50)
at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:32)
at org.gradle.launcher.GradleMain.main(GradleMain.java:26)
Caused by: java.lang.RuntimeException: Manifest merging failed. See console for more info.
at com.android.builder.AndroidBuilder.doMerge(AndroidBuilder.java:475)
at com.android.builder.AndroidBuilder.mergeLibraryManifests(AndroidBuilder.java:461)
at com.android.builder.AndroidBuilder.processManifest(AndroidBuilder.java:301)
at com.android.builder.AndroidBuilder$processManifest.call(Unknown Source)
at com.android.build.gradle.tasks.ProcessAppManifest.doFullTaskAction(ProcessAppManifest.groovy:65)
at com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.groovy:71)
at org.gradle.api.internal.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:216)
at org.gradle.api.internal.BeanDynamicObject.invokeMethod(BeanDynamicObject.java:122)
at org.gradle.api.internal.CompositeDynamicObject.invokeMethod(CompositeDynamicObject.java:147)
at com.android.build.gradle.tasks.ProcessAppManifest_Decorated.invokeMethod(Unknown Source)
at org.gradle.util.ReflectionUtil.invoke(ReflectionUtil.groovy:23)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.doExecute(AnnotationProcessingTaskFactory.java:217)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:210)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:199)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:526)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:509)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
... 67 more
Lukas Olsen
la source

Réponses:

133

J'ai trouvé la solution à ce problème:

gradle assemble -info m'a donné l'indication que les Manifests ont différentes versions de SDK et ne peuvent pas être fusionnés.

J'avais besoin d'éditer mes Manifests et le fichier build.gradle et tout fonctionnait à nouveau.


Pour être clair, vous devez modifier le uses-sdkdans le fichier AndroidManifest.xml

<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="16" />

et la androidsection, en particulier minSdkVersionet targetSdkVersiondans le fichier build.gradle

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 16
    }
}
Lukas Olsen
la source
1
Assurez-vous de modifier votre fichier gradle.build dans le cas où vous utilisez Android Studio. Les valeurs sur AndroidManifest.xml sont remplacées lors de la construction!
Diego Acosta
@Nakardo en modifiant les valeurs de build.gradlene pas remplacer les valeurs de my AndroidManifest.xmllors de l'exécutiongradle assemble
Nimrod Dayan
1
@Nakardo Le build.gradle sdkVersionremplace toujours la AndroidManifest.xmlcitation de la documentation Android: Cette valeur minSdkVersion n'est pas utilisée; elle est toujours remplacée par la valeur spécifiée dans le script de construction Gradle. La valeur de (par exemple) minSdkVersion n'est utilisée que si elle n'est pas spécifiée dans les scripts de construction build.gradle. Lorsqu'elle est spécifiée dans les scripts de génération Gradle, la valeur du manifeste est ignorée et peut être trompeuse, elle doit donc être supprimée pour éviter toute ambiguïté.
Chad Bingham
@Lukas Olsen sur la solution. Ma version minsdk était 19 mais dans gradle c'était 10, toujours pas nécessaire pour targetSDK dans build.gradle bien que cela soit déclaré dans le manifeste. Fait intéressant, je viens de mettre à jour mon studio Android vers 2.1.1 et cela fonctionnait auparavant. Problème résolu maintenant.
natur3
En tant que suivi, l'erreur est retournée en fait parce que j'avais une balise de métadonnées dupliquée tirant l'ID de l'application de strings.xml pour une utilisation avec parse. Aucune erreur liée à l'analyse, mais ces métadonnées ont provoqué le crash, je n'ai en fait pas vu ce détail d'erreur jusqu'à ce que j'ouvre l'onglet de la console Gradle dans Android Studio
v.2.1.1
126

De manière générale, pour voir quelle est l'erreur, vous pouvez voir le fichier manifeste fusionné dans le studio Android

Allez sur votre fichier manifeste

entrez la description de l'image ici

Cliquez sur l'onglet du bas "Manifeste fusionné"

entrez la description de l'image ici

Sur l'écran de droite, dans "Autres fichiers manifestes", recherchez toute erreur due à graddle:

entrez la description de l'image ici

Kevin ABRIOUX
la source
Vous avez sauvé ma journée
Abhishek Pachal
34

Je souhaite que la solution Lukas Olsen fonctionne pour d'autres scénarios, mais dans mon cas, c'est assez différent.

J'ai fait face à la même chose en ajoutant ActionBarShelock au projet, en comparant à l'ancienne bibliothèque, j'ai trouvé que la balise d'application était manquante dans le manifeste. En ajoutant une ligne, j'ai résolu mon problème.

</application>
vinaykumar
la source
La première fois, c'était dû aux versions du SDK, mais maintenant, il <application />manquait. Vous m'avez sauvé, merci.
Benjamin Toueg
C'était aussi mon cas!
cesards
@Ahmad Ali Nasir mais dans mon cas, je suis Lukas Olsen mais aucun changement ne peut m'aider frère
Manoj
@Manoj bien sûr, mais merci de partager votre script build.grade et le journal des erreurs, afin que nous puissions tous mieux comprendre ce que vous pourriez faire de mal.
Ahmad Ali Nasir
@Ahmad Ali Nasir, bien sûr que mon frère, j'avais posté une question ici, j'en ai beaucoup stackoverflow.com/questions/27266042/…
Manoj
17

Cela semble se produire car les services Google Play nécessitent Android 2.2, qui est la version 8 du SDK.

Dans build.gradle, assurez-vous que votre minSdkVersion est au moins 8. La valeur par défaut semble être 7. Donc vous avez quelque chose comme ça:

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 16
    }
}

dependencies {
    compile 'com.android.support:support-v4:13.0.+'
    compile 'com.google.android.gms:play-services:3.1.36'
}
mjibson
la source
Cela a résolu mon problème de manifeste, mais maintenant j'obtiens Gradle: erreur: impossible de trouver le symbole pour aucune de mes variables de symbole. Cela m'est arrivé une fois auparavant lorsque j'ai eu une erreur de compilation et que je l'ai corrigée. J'ai commencé à avoir ces problèmes. Une idée comment résoudre ce problème?
Dan
Correction du problème, on dirait que Gradle a ajouté un android.R d'importation à mon activité principale. J'ai supprimé la ligne et tout va bien maintenant.
Dan
14

J'ai résolu en mettant cette ligne dans la balise d'application ...

outils: node = "replace"

AndroUser
la source
Cela a résolu mon problème. Merci! Je devais l'ajouter sous l' applicationétiquette dans leAndroidManifest.xml
Reaz Murshed
Cela a résolu mon problème après 30 minutes de recherche
Demon App Programmer
Pour moi, il dit Le préfixe "outils" pour attribut "tools: node" associé à un élément de type "application" n'est pas lié.
Amritesh Anand
pas fonctionné pour moi obtenu une erreur: Le préfixe "outils" pour l'attribut "outils: nœud" associé à un type d'élément "application" n'est pas lié.
Kapil soni
11

J'ai également rencontré cette erreur lorsque j'ajoutais des notifications push firebase dans mon application. mais dans mon cas, je faisais une erreur très stupide que j'ai remarquée après un certain temps. J'ai déclaré le code ci-dessous dans le manifeste deux fois. Après avoir supprimé la déclaration en double. mon problème est résolu.

        <service   android:name="com.evampsaanga.mytelenor.firebase.MyFirebaseInstanceIDService">
        <intent-filter>
            <action android:name="com.google.firebase.INSTANCE_ID_EVENT" />
        </intent-filter>
    </service>`

donc vous vérifiez également s'il y a quelque chose en double dans le fichier manifeste de votre application.

Développer
la source
Meilleure réponse..!!
RUTURAJ Raval
5

C'est peut-être à cause d'une déclaration d'activité en double dans votre manifeste.

hovo888s
la source
5

Si vous ajoutez des dépendances telles que ActionBarSherlock par Gradle,
définissez soigneusement votre targetSdkVersion 17 ou supérieur.

Le devis ci-dessous contient les --infojournaux lorsque ActionBarSherlock ne correspond pas au projet privé.

[C: \ Me \ Documents \ GitHub \ project \ AndroidManifest.xml: 3, C: \ Me \ Documents \ GitHub \ project \ build \ exploded-bundles \ ComActionbarsherlockActionbarsherlock440.aar \ AndroidManifest.xml: 2] Le manifeste principal n'a qu'une bibliothèque utilise targetSdkVersion = '17 '
: testApp: processDebugManifest FAILED

Il serait préférable de maintenir son propre projet targetSdkVersionle plus récent possible.

Youngjae
la source
Merci pour le --info, j'étais bloqué et j'ai réussi à résoudre le problème en courant ./gradlew assemble --info. Dans mon cas, j'ai déclaré gles version 2 sur mon manifeste principal, mais je ne l'ai pas fait sur le projet de bibliothèque. Si vous ne le déclarez pas, il utilise par défaut la version 1 et c'est la cause de l'erreur (incompatibilité).
Orgmir
4

Je suis tombé sur le même problème et ce que j'ai fait pour le résoudre était d'ajouter

tools:replace="android:icon"

à l'élément sur AndroidManifest pour remplacer

RicNjesh
la source
4

Il peut s'agir d'une autorisation en double ajoutée dans le fichier manifeste. Dans mon cas, "uses-permission android: name =" android.permission.READ_PHONE_STATE "a été répété.

Rajath
la source
3

Pour ce que je peux voir, si vous avez un projet multi-module avec Android Studio et gradle, l'EDI essaie de fusionner les fichiers manifestes de chaque module dans un manifeste principal.

Si vous avez un module A et un module B, et que dans le manifeste A vous déclarez une activité du module B, gradle rencontrera un problème lors de la fusion.

Essayer supprimer la référence inter-module dans les fichiers manifestes.

Paolo M
la source
Je veux juste exécuter les cas de test J'utilise un studio Android dans lequel j'ai eu plusieurs projets A et B avec une bibliothèque commune pour les deux, il ne s'exécute pas provoque une erreur dexdebugTest suivie de "Lukas Olsen" mais aucun changement ne peut m'aider
Manoj
@ Paolo M je veux juste exécuter les cas de test J'utilise Android Studio dans lequel j'ai eu plusieurs projets A et B avec une bibliothèque commune pour les deux, il ne s'exécute pas provoque une erreur dexdebugTest suivie de "Lukas Olsen" mais aucun changement ne peut m'aider
Manoj
3

Dans mon cas,

Je définis l'activité deux fois dans le fichier manifeste

 <application
  android:allowBackup="false"
  android:label="@string/app_name"
  >


      <activity
        android:name="com.xxx.ActivityOne"
        android:configChanges="orientation|screenSize"
        android:windowSoftInputMode="stateHidden|adjustResize" />

      //Problem here.. same activity twice define

      <activity
        android:name="com.xxx.ActivityOne"
        android:configChanges="orientation|screenSize"
        android:windowSoftInputMode="stateHidden|adjustResize" />

     </application>

Après avoir supprimé l'erreur en double résolue.

Ranjith Kumar
la source
Donc, le point est <application> <activité> doit être défini une fois dans une balise <manifest>
muhammad tayyab
@muhammadtayyab no .. J'ai défini la même activité deux fois. c'est le problème. vous pouvez définir n nombre <activité>
Ranjith Kumar
2

J'ai eu le même problème et aucune des autres réponses n'a aidé.

Dans mon cas, un commentaire dans le fichier manifeste était le coupable:

<manifest [...]
    android:installLocation="auto">
    <!-- change installLocation back to external after test -->

    <uses-sdk [...]

(Cela peut être un bogue, car les commentaires dans d'autres zones du manifeste ne posent aucun problème.)

Janosch
la source
2

Je suis tombé sur un problème similaire, quand je cours

cordova build android

qui signalent les erreurs:

 /home/app/phonegap/helloworld/platforms/android/AndroidManifest.xml:15:5 Error:
uses-sdk:minSdkVersion 7 cannot be smaller than version 10 declared in library  /home/app/phonegap/helloworld/platforms/android/build/intermediates/exploded-aar/android/CordovaLib/unspecified/debug/AndroidManifest.xml
Suggestion: use tools:overrideLibrary="org.apache.cordova" to force usage

: processDebugManifest FAILED

ÉCHEC: la construction a échoué avec une exception.

  • Qu'est-ce qui ne va pas: l'exécution de la tâche «: processDebugManifest» a échoué.

    La fusion du manifeste a échoué: uses-sdk: minSdkVersion 7 ne peut pas être plus petit que la version 10 déclarée dans library / home / app / phonegap / helloworld / plates-formes / android / build / intermediates / exploded-aar / android / CordovaLib / unspecified / debug / AndroidManifest. xml Suggestion: utilisez les outils: overrideLibrary = "org.apache.cordova" pour forcer l'utilisation

Dans mon cas,

uses-sdk:minSdkVersion 7 cannot be smaller than version 10 declared

, la solution ci-dessus ne fonctionne pas! mais je les résous en les remplaçant

<preference name="android-minSdkVersion" value="7" />

comme

<preference name="android-minSdkVersion" value="10" />

dans ces deux fichiers /home/app/phonegap/helloworld/config.xml,/home/app/phonegap/helloworld/platforms/android/res/xml/config.xml

Emery Yan
la source
2

2 choses que vous devez ajouter à AndroidManifest.xml:

1er: ajoutez xmlns: tools = "http://schemas.android.com/tools" à la balise manifeste

<manifest xmlns:android=".........
   package="...........
   xmlns:tools="http://schemas.android.com/tools">

2ème: Ajouter des outils: replace = "icon" au tag d'application

<application
       android:icon=.........
       android:label=.......
       tools:replace="icon">
Keith Davis
la source
1

Essayez de changer:

<manifest xmlns:android="http://schemas.android.com/apk/res/android">
...
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="16" />

À:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">
...
<uses-sdk xmlns:tools="http://schemas.android.com/tools"
    android:minSdkVersion="14" android:targetSdkVersion="16" />
swooby
la source
1

si vous utilisez android studio, vous devez exécuter le studio android via l' invite de commande (dans Windows) ou le terminal (dans le système d'exploitation de base UNIX) afin que vous puissiez voir plus de détails sur cette erreur dans la fenêtre d'invite de commande.

Mohammad Reza Norouzi
la source
Vous pouvez spécifier n'importe quelle option de ligne de commande Gradle dans la boîte de dialogue Gradle Settings qui s'ouvre en appuyant sur le dernier bouton de l'onglet Gradle dans l'EDI, il n'est donc pas vraiment nécessaire de recourir à la ligne de commande. Cependant, la quantité de merde que nous devons supporter en utilisant cet outil de construction est vraiment incroyable.
Giulio Piancastelli
1

J'ai trouvé une autre solution possible pour cela en essayant de mettre à jour mon Urban Airship vers la dernière version. Dans mon fichier build.gradle de niveau supérieur, le code ressemblait à:

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.12.2'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

par défaut, tel que généré par Android Studio. J'ai changé cela pour une version ultérieure gradle en le remplaçant par:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.13.+'
    }
}

Et après cela, le projet se construirait.

Papier épais
la source
Quelque chose comme ça était aussi mon problème! J'avais des dépôts {mavenCentral ()} dans build.gradle, ce qui a résolu le problème.
David
1

Dans mon cas, c'était à cause de l'autorisation en double dans mon fichier Manifest et minSDKVersion de la bibliothèque était supérieur à minSDKVersion de mon projet. Je viens de rendre cette minSDKVersion égale et compilée avec succès.

Personne
la source
1

Ce problème est dû à compileSdkVersion 26 buildToolsVersion "26.0.0" ou à compiler 'com.android.support:appcompat-v7:26.+'

au lieu de cela, utilisez compileSdkVersion 25 buildToolsVersion "25.0.3" compilez 'com.android.support:appcompat-v7:25.+'

Ère créative
la source
1

Dans mon cas, j'avais écrit l'étiquette deux fois. C'était ma seule erreur C'était avant le code`

<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>

    <uses-permission android:name="android.permission.RECORD_AUDIO"/>


<application tools:targetApi="28" tools:ignore="GoogleAppIndexingWarning" android:networkSecurityConfig="@xml/react_native_config" />




<application application tools:targetApi="28" tools:ignore="GoogleAppIndexingWarning" android:networkSecurityConfig="@xml/react_native_config" >

</application>

»

Le simple fait de supprimer la balise d'application a résolu mon problème.

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

    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>



    <application tools:targetApi="28" tools:ignore="GoogleAppIndexingWarning" android:networkSecurityConfig="@xml/react_native_config" />



</manifest>

Les points que vous ne devriez avoir qu'une seule balise; peut avoir plusieurs balises et, mais une seule. C'est ce que je sais en ce moment :)

Muhammad tayyab
la source
1

Peut-être avez-vous des activités en double

Comme ça:

<activity android:name=".register.RegisterStepsActivity" />

....

<activity android:name=".register.RegisterStepsActivity" />

il suffit de commenter l'un d'entre eux

Williaan Lopes
la source
1

Cette erreur peut être due à un attribut laissé vide dans le fichier manifeste.

Un exemple:

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:logo="@drawable/ic_actionbar"
    android:supportsRtl="true"
    android:fullBackupContent="">
...
</application>

Le fullBackupContentest vide dans l'exemple ci-dessus.

Quand il android:fullBackupContent="true"sera changé, il sera corrigé.

Phani Rithvij
la source
1

Ajoutez simplement ces deux lignes à "gradle.properties":

android.useAndroidX=true
android.enableJetifier=true
Kike Gamboa
la source
2
cela ne peut pas être ça, j'avais déjà ces lignes gradle.propertieset je n'ai commencé à obtenir cette erreur que lorsque j'ai essayé de l'exécuter dans un environnement Windows OS.
Daniel
0

J'ai eu ces erreurs car je n'avais pas installé la version SDK requise. Après avoir téléchargé et installé la version du SDK présente dans le fichier build.gradle / Android Manifest, le problème a été résolu.

Fenil
la source
0

J'ai rencontré le problème pour une autre raison.

Je construisais une application dans Android Studio et j'avais un module d'application et un autre module. Le module d'application dépendait de l'autre module.

Mais une partie du build.gradlemodule d'application est:

<application
    android:allowBackup="false"
    android:label="@string/app_name"
    android:supportsRtl="true">

    ...

</application>

tandis que la build.gradlepartie de l'autre module est:

<application
    android:allowBackup="true"
    android:label="Android Lua"
    android:supportsRtl="true">

</application>

Donc, je change la build.gradlepartie du module en:

<application
    android:allowBackup="false"
    android:label="@string/app_name"
    android:supportsRtl="true">

</application>

Problème résolu.

MewX
la source
0

Déclaration de duplication de la même activité dans le fichier manifeste Android.

sumit mehra
la source
0

Dans mon cas, j'avais dans le fichier manifeste une structure de balise invalide, j'avais une activité ouverte fermée mais à l'intérieur où se trouvait un minerai activities (...)qui invalide l'exactitude du fichier, pour le trouver, il a fallu pas mal de deux heures, erreur signalée manquante / inconnue <activity>.

Andrea Leganza
la source
0
compile 'com.github.wenchaojiang:AndroidSwipeableCardStack:0.1.1'

S'il s'agit de la dépendance que vous avez ajoutée, remplacez-la par:

compile 'com.github.wenchaojiang:AndroidSwipeableCardStack:0.1.4'

et assurez-vous que cela target sdkne devrait pas être inférieur à 15 .

Samridhi Dev
la source
0

J'ai résolu ce problème dans Android Studio 3.5 en nettoyant et en reconstruisant le projet.

Cliquez simplement sur Build -> Rebuild Project.

ciseaux
la source