错误:Gradle:任务“:app:crashlyticsCleanupResourcesDebug”执行失败。 > Crashlytics 开发人员工具错误

Posted

技术标签:

【中文标题】错误:Gradle:任务“:app:crashlyticsCleanupResourcesDebug”执行失败。 > Crashlytics 开发人员工具错误【英文标题】:Error:Gradle: Execution failed for task ':app:crashlyticsCleanupResourcesDebug'. > Crashlytics Developer Tools error 【发布时间】:2015-03-31 02:26:09 【问题描述】:

我有这个 mainActivity

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();
    

这是我的 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.+'

当我运行项目构建时,我得到这个编译错误:

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

我该如何解决这个问题?

【问题讨论】:

这似乎没有足够的信息来调试问题。您可以尝试从带有详细输出的命令行编译(gradle -info compileDebugSources)。从该输出中发布错误消息。 您是否已将 API 密钥添加到应用清单中?我遇到了同样的错误,那是我的问题。 我也遇到了这个问题,并通过将字符串直接放入元标记中解决了这个问题,而无需将 api 键定义到字符串资源中。例如将 替换为 我有一个解决方案,解决这个问题:请从这个链接***.com/a/40949152/3819836得到我的答案 我通过关注Hassan Jamil's answer 解决了这个问题。非常感谢。 【参考方案1】:

您需要将您的 API 密钥添加到 Android Manifest:

<application>
    <meta-data
        android:name="com.crashlytics.ApiKey"
        android:value="your key here" />
</application>

【讨论】:

我只想使用fabric 登录twitter。我为什么要使用 crashlytics。我还是有同样的问题。你能解决这个问题吗? 这是在使用插件时自动添加的。而且我仍然收到此错误。我不确定这是否是解决方案。 我正在将字符串资源(由于不同的实时和调试密钥)分配给value。似乎它不起作用。伤心。【参考方案2】:

这个方法解决了我的问题:

删除或评论此行(build.gradle):

  // apply plugin: 'io.fabric'

或者如果您有 ApiKey,请定义结构 ApiKey (AndroidManifest.xml)

    <meta-data
        android:name="io.fabric.ApiKey"
        android:value="yourApiKey012356465654" />

【讨论】:

运行时错误已解决。但是使用 Twitter 登录时会收到“无法完成操作”的祝酒词。请问有什么建议吗? 你救了我的命 @VinilChandran 也许你必须获取结构密钥(twittercommunity.com/t/how-can-i-get-apikey/26162/2)并将其放入 AndroidManifest.xml ???【参考方案3】:

如果您只想使用 SDK 撰写推文,您可以删除该行

apply plugin: 'io.fabric'

并且 gradle 构建将正常工作

【讨论】:

【参考方案4】:

我也遇到了这个问题,并通过将字符串直接放在元标记中而不将 api 键定义到字符串资源中来解决它。 例如 替换

<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" />

【讨论】:

Android Studio (2.3 Canary 2, Build #AI-162.3508619, build on November 18, 2016) 我认为这里有错误!这个解决方案对我有用 我在使用 Android Studio 2.3.3 时仍然遇到了这个问题。这个解决方案奏效了。只要我的项目由一个模块组成,问题就不会发生。当我在库项目中添加 crashlytics 依赖项并在 app 模块中应用插件时发生这种情况。 这个问题在我们的案例中得到了解决。我不明白为什么?【参考方案5】:

当您按照在 Crashlytics 仪表板中添加应用程序的步骤时,他们提到了添加 api 密钥的步骤。就我而言,当我尝试从 strings.xml 文件中获取密钥时,我遇到了同样的错误。问题是 crashlytics 插件使用运行时 api 密钥插入方法,因此构建失败,因为它无法从字符串文件中获取密钥。

我尝试了以下步骤:

    在 build.gradle 的 defaultConfig 中添加清单占位符:
    defaultConfig 
    manifestPlaceholders = [ api_key_crashlytics:"xxxx__your_api_key"]
    在您的 AndroidManifest.xml 中,在您的应用程序标签内添加以下代码:
<meta-data
      android:name="io.fabric.ApiKey"
      android:value="$api_key_crashlytics" />

这对我有用。

【讨论】:

【参考方案6】:

请确保您已添加

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

在 build.gradle 文件的末尾。

【讨论】:

【参考方案7】:

打开已经安装的Fabric Plugin并更新Crashlytics,你的问题就解决了

【讨论】:

错误即将到来,因为您尚未更新 Crashlytics ,一旦您更新它,它就会得到解决【参考方案8】:

我有时会遇到这个问题,尽管我已经在 manifest 中有 api 密钥。然后我在尝试组装上传到Fabric之前尝试组装发布apk。所以让我们执行:

$ ./gradlew assembleRelease

然后

$ ./gradlew assembleRelease crashlyticsUploadDistributionRelease

而且效果很好。

【讨论】:

【参考方案9】:

如果您使用distribution with Gradle,您可能已经检查了一些属性,例如

ext.betaDistributionReleaseNotesFilePath=”path/to/release_notes.txt”

在我们的例子中,我们没有这个文件并且任务崩溃了。要查看问题,请转到 Gradle 控制台并检查日志:

【讨论】:

【参考方案10】:

我尝试了您在该问题和其他问题下提出的所有解决方案。但他们都没有解决我的问题。我解决了我的问题。我的解决方案可能会解决您的问题。我在主文件夹下创建了空的 res 文件夹。项目->src->main->res

【讨论】:

【参考方案11】:

很可能 ApiKey 不正确,只需检查一下即可。为我工作。

【讨论】:

【参考方案12】:

您的密钥可能在错误的 Android 清单中输入

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

注册进入项目后即可获取代码

https://fabric.io/home

【讨论】:

以上是关于错误:Gradle:任务“:app:crashlyticsCleanupResourcesDebug”执行失败。 > Crashlytics 开发人员工具错误的主要内容,如果未能解决你的问题,请参考以下文章

Gradle 4.7构建抛出错误执行任务bootRepackage

Gradle productFlavors 引发错误 - 无法添加任务“:assembleTest”,因为具有该名称的任务已存在

错误:Gradle:任务“:app:crashlyticsCleanupResourcesDebug”执行失败。 > Crashlytics 开发人员工具错误

错误:Gradle:任务“:core:compileJava”执行失败。 > 编译失败

如何修复“任务 'compileJava' 执行失败”错误。 (使用 Intellij Idea 和 Gradle)

Gradle 错误:任务“:app:processDebugGoogleServices”执行失败