web-dev-qa-db-fra.com

Erreur: Gradle: l'exécution a échoué pour la tâche ': app: crashlyticsCleanupResourcesDebug'. > Erreur Crashlytics Developer Tools

J'ai cette activité principale

public class MainActivity extends RoboFragmentActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Crashlytics.start(this);
        //setContentView(R.layout.activity_main);

        Intent intent = new Intent(this, MainActivity_with_Fragment.class);
        startActivity(intent);
        finish();
    }
}

c'est mon gradle.build

buildscript {
    repositories {
        jcenter()
        maven { url 'http://download.crashlytics.com/maven' }
    }
    dependencies {
        classpath 'com.Android.tools.build:gradle:0.14.2'
        classpath 'com.crashlytics.tools.gradle:crashlytics-gradle:1.+'
    }
}
apply plugin: 'com.Android.application'
apply plugin: 'crashlytics'

repositories {
    jcenter()
    maven { url 'http://download.crashlytics.com/maven' }
}

Android {
    compileSdkVersion 19
    buildToolsVersion "19.1.0"

    defaultConfig {
        applicationId "com.example.stopcall.app"
        minSdkVersion 14
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
        }
    }
    lintOptions {
        abortOnError false
    }
}


dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.Android.support:support-v4:21.0.3'
    compile 'org.roboguice:roboguice:3.+'
    provided 'org.roboguice:roboblender:3.+'
    compile 'com.crashlytics.Android:crashlytics:1.+'
}

Lorsque j'exécute le projet, j'obtiens cette erreur de compilation:

Error:Gradle: Execution failed for task ':app:crashlyticsCleanupResourcesDebug'.
> Crashlytics Developer Tools error.

comment puis-je réparer cela?

47
Elad Benda

Vous devez ajouter votre clé API au manifeste Android:

<application>
    <meta-data
        Android:name="com.crashlytics.ApiKey"
        Android:value="your key here" />
</application>
66
Bill Mote

Cette méthode a résolu mon problème:  

Supprimer ou commenter cette ligne (build.gradle):

  // apply plugin: 'io.fabric'

ou si vous avez une clé ApiKey, définissez la structure ApiKey (AndroidManifest.xml)

    <meta-data
        Android:name="io.fabric.ApiKey"
        Android:value="yourApiKey012356465654" />
34
Fathur Rohim

Si vous souhaitez uniquement composer un tweet avec le SDK, vous pouvez supprimer la ligne.

apply plugin: 'io.fabric'

Et la construction gradle fonctionnera correctement

23
Khriz

J'ai également eu le problème et résolu en mettant la chaîne directement dans la balise méta sans définir la clé API dans les ressources de chaîne. 

par exemple . Remplacer

<meta-data
        Android:name="io.fabric.ApiKey"
        Android:value="@string/string_res_name_of_your_api_key" />

à

<meta-data
        Android:name="io.fabric.ApiKey"
        Android:value="your_api_key_string" />
18
Hassan Jamil

Lorsque vous suivez les étapes pour ajouter une application dans votre tableau de bord Crashlytics, ils ont mentionné une étape pour ajouter la clé api. Dans mon cas, la même erreur se produisait lorsque j'essayais d'extraire la clé du fichier strings.xml. Le problème était que le plugin crashlytics utilisait une méthode d'insertion de clé API d'exécution et que la construction échouait car il n'était pas en mesure d'obtenir la clé à partir du fichier de chaînes.

J'ai essayé l'étape ci-dessous:

  1. Ajoutez un espace réservé au manifeste dans le defaultConfig de votre build.gradle:
    defaultConfig {
    manifestPlaceholders = [ api_key_crashlytics:"xxxx__your_api_key"]}
  1. Dans votre fichier AndroidManifest.xml, ajoutez le code ci-dessous dans la balise de votre application:
<meta-data
      Android:name="io.fabric.ApiKey"
      Android:value="${api_key_crashlytics}" />

Cela a fonctionné pour moi.

8
Sanket Mendon

Ouvrez le plug-in Fabric déjà installé et mettez à jour Crashlytics, votre problème est résolu

3
sonal balekai

S'il vous plaît assurez-vous que vous avez ajouté

apply plugin: 'com.google.gms.google-services'

à la fin de votre fichier build.gradle.

3
stefan222

Si vous utilisez distribution avec Gradle vous avez peut-être coché certaines propriétés telles que 

ext.betaDistributionReleaseNotesFilePath = ”chemin/vers/release_notes.txt”

Dans notre cas, nous n'avions pas ce fichier et la tâche s'est écrasée. Pour voir le problème, accédez à la console Gradle et consultez les journaux:

 enter image description here

1
Gaket

J'ai fait face à ce problème pendant parfois, même si j'avais déjà une clé API dans le manifeste. Ensuite, j'essaie d'assembler la version apk avant d'essayer de l'assembler pour l'envoyer sur Fabric. Alors laissez exécuter:

$ ./gradlew assembleRelease

puis

$ ./gradlew assembleRelease crashlyticsUploadDistributionRelease

et ça marche bien.

1
khaintt

J'ai essayé toute votre solution suggère sous cette question et d'autres. Mais tous n'ont pas résolu mon problème. J'ai résolu mon problème. Ma solution peut résoudre votre problème. J'ai créé le dossier res vide sous le dossier principal. projet-> src-> main-> res

 Screenshot

0
elfekz

Très probablement, la clé ApiKey n'est pas correcte. Travaillé pour moi.

0
Goodlife

Votre clé a peut-être été entrée sur le mauvais manifeste Android

 <meta-data
    Android:name="io.fabric.ApiKey"
    Android:value="yourApiKey" />          //You must have 40 words

Vous pouvez obtenir le code après vous être inscrit et entré dans le projet

https://fabric.io/home

0
younes