【问题标题】:Problem in using firebase crashlytics sdk使用 firebase crashlytics sdk 的问题
【发布时间】:2020-01-24 09:20:03
【问题描述】:

我想使用基于官方文档的 firebase crashlytics sdk,但我的 gradle 同步失败:

错误:Android 依赖项 'com.crashlytics.sdk.android:crashlytics-core:2.4.1' 设置为 compileOnly/provided 不受支持

我能做些什么来解决这个问题...?

应用级别:

apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

android {
    compileSdkVersion 28
    buildToolsVersion '28.0.3'


    buildTypes {
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }


    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

dependencies {

    implementation 'com.google.firebase:firebase-analytics:17.2.0'
    // Add dependency
    implementation  'com.crashlytics.sdk.android:crashlytics:2.10.1'

}

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

项目级别:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
        maven {
            url 'https://maven.fabric.io/public'
        }

        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.4.2'
        classpath 'org.greenrobot:greendao-gradle-plugin:3.2.2'
        classpath 'com.google.gms:google-services:4.3.2'
        classpath 'io.fabric.tools:gradle:1.31.0'  // Crashlytics plugin

    }
}

allprojects {
    repositories {
        jcenter()
        maven { url "https://jitpack.io" }
        maven {
            url 'https://maven.google.com/'
        }
        maven {
            url 'https://maven.fabric.io/public'
        }
        google()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

【问题讨论】:

    标签: android firebase crashlytics


    【解决方案1】:

    compileOnly 替代品——被弃用的等效配置是provided。见the documentation

    【讨论】:

    • 错误:无法解析 ':app@debug/compileClasspath' 的依赖关系:无法解析 com.crashlytics.sdk.android:crashlytics:2.10.1。
    • @DanialNazari 你能在你添加库的地方发布你的 gradle
    • @Danial Nazari 在我身边使用 compile('com.crashlytics.sdk.android:crashlytics:2.10.1@aar') { transitive = true; }
    【解决方案2】:

    在您的项目级 build.gradle 中,将您的 google-services 更新到 3.1.2 或更高版本,然后添加 Crashlytics 存储库和依赖项:

      buildscript {
      repositories {
        // Add the following repositories:
        google()  // Google's Maven repository
    
        maven {
           url 'https://maven.fabric.io/public'
        }
    }
    
    dependencies {
        // ...
    
        // Check for v3.1.2 or higher
        classpath 'com.google.gms:google-services:4.3.2'  // Google Services plugin
    
        // Add dependency
        classpath 'io.fabric.tools:gradle:1.31.0'  // Crashlytics plugin
    
       }
      }
    
    
     allprojects {
       // ...
    
      repositories {
       // Check that you have the following line (if not, add it):
       google()  // Google's Maven repository
       // ...
      }
     }
    

    在您的应用级 build.gradle 中,添加 Crashlytics 依赖项:

    apply plugin: 'com.android.application'
    apply plugin: 'io.fabric'
    
    dependencies {
    // ...
    
    // (Recommended) Add Analytics
    implementation 'com.google.firebase:firebase-analytics:17.2.0'
    
    // Add dependency
    implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'
    }
    

    【讨论】:

    • 我编辑帖子并添加了应用程序和项目级别的 gradle ,我错过了什么吗?
    猜你喜欢
    • 2020-10-01
    • 2018-06-09
    • 2021-05-20
    • 2019-04-13
    • 1970-01-01
    • 2023-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多