【问题标题】:Crashlytics Fabric.io deprecatedCrashlytics Fabric.io 已弃用
【发布时间】:2020-03-21 18:00:45
【问题描述】:

有谁知道在Android 应用程序中使用Firebase 实现Crash report 的正确方法是什么?

我已经阅读了Firebase crashlytics 文档中提到的实现Fabric.ioFabric.io 已弃用,并且在文档中提到删除了 fabric.io 依赖项。

Firebase https://firebase.google.com/docs/crashlytics/get-started?platform=android

Fabric.io reference https://docs.fabric.io/android/examples/sampleapp/index.html

如果没有 fabric.io 依赖,我会遇到错误

java.lang.RuntimeException:无法获取提供程序 com.crashlytics.android.CrashlyticsInitProvider:io.fabric.sdk.android.services.concurrency.UnmetDependencyException:缺少 Crashlytics 构建 ID。当您的应用的构建配置中缺少 Crashlytics 工具时,就会发生这种情况。请查看 Crashlytics 入职说明并确保您拥有有效的 Crashlytics 帐户。`

注意: 请比较两个参考中的步骤,我已经浏览了所有链接,但没有找到正确的方法,这就是我在这里询问的原因。

我确信没有 1 人会通过链接,这就是为什么投反对票很棒。我已附上 Firebase 和 Fabric.io 文档步骤屏幕

【问题讨论】:

  • 我的问题是从没有 Fabric.io 的全新集成开始,所以我不需要进行迁移
  • 您是否按照您发布的 firebase 链接中的步骤操作?
  • 当您不必进行迁移时会更简单..只需按照您发布的链接..您只需在控制台中创建一个项目并放置google-services.json文件在您的本地项目中(遵循其余步骤)..
  • @sanjeev 你不明白这个问题。我的问题是 Firebase 说集成 fabric.io 和 Fabric.io 文档说不要的正确方法是什么
  • @Pratik 他们已将所有内容从控制台中移出,但尚未从fabric.io 中完全删除。在 Google 中发生的类似事情是 GoogleAnalytics 被迁移 FirebaseAnalytics。虽然所有内容都已迁移,但他们尚未将其从 Fabric 中删除

标签: android crashlytics-android fabric.io


【解决方案1】:

迟到

这里是解决办法,首先去掉fabric.io相关的所有参考和代码。

在主要的 gradle.build 项目级别

buildscript {
  ext.kotlin_version = '1.4.0'
  repositories {
    google()
    jcenter()
  }
  dependencies {
    classpath 'com.android.tools.build:gradle:4.0.2'
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

    // Add this line
    classpath 'com.google.firebase:firebase-crashlytics-gradle:2.3.0'
  }
}

接下来,在 build.gradle 应用级别

apply plugin: 'com.google.firebase.crashlytics' // add this line at top

在依赖区

dependencies {
 implementation 'com.google.firebase:firebase-crashlytics:17.2.2' // add this line
}

【讨论】:

    【解决方案2】:

    如果您真的想从您的应用中移除 Fabric SDK 并使用 Firebase SDK,请关注Upgrade to the Firebase Crashlytics SDK

    本指南介绍了如何从 Fabric Crashlytics SDK 升级到新的 SDK。它描述了新 API 带来的更改、更改的原因以及如何更新您的代码(如果需要)。

    docs.fabric.io你可以得到以下信息,所以我不知道你为什么有这么多反对票,这是一个合法的问题恕我直言。也许是因为你自己没有像我在这里那样做这项研究。

    在宣布弃用日期之前,您可以继续在您的应用中使用 Fabric Crashlytics SDK。 一旦宣布 Fabric Crashlytics SDK 弃用日期,您将需要升级到新的 Firebase Crashlytics SDK。 仍在使用 Fabric Crashlytics SDK 的旧版本应用在弃用后不会中断,但它们不会中断不再提交崩溃报告。

    但它似乎会在此日期之后继续正常工作,直至另行通知。保持原样。

    【讨论】:

      【解决方案3】:

      你在说这个吗?

      apply plugin: 'io.fabric'
      

      根据here中的文档,

      Crashlytics 已集成到 Firebase 中,新的 Firebase 专用 特征。新应用应使用 Firebase 中的 Crashlytics 来访问 最新的更新和功能。 Fabric Crashlytics 和 Fabric 现有用户可在 2020 年 3 月 31 日之前使用仪表板。

      我的猜测是,它可能是 - 我们称之为宽限期 ;) 直到所有其他用户迁移它并且他们从 Fabric 迁移所有其他 工具

      到 2020 年 3 月 31 日,与 Fabric 相关的所有内容都可能会被移除。希望我回答了你所说的。

      【讨论】:

      • 我希望您现在通过链接或再次参考我的问题并比较步骤
      【解决方案4】:

      其中一个问题是 Google 页面省略了英语以外的其他语言的 android 教程。 (它可以通过错误发生。它发生在我身上。) 好的...我对 Crashlytics 不是很有经验,并且希望进行迁移,我遇到了您展示的这些链接,我也很困惑。 但据我了解,Fabric Crashlytics 被收购并合并到 Firebase 中,所以第一个教程很旧,当时需要 Fabric 库在 Firebase 中实现 Crashlytics。 第二个教程似乎不想指定将实现哪些新库。 我发现的最好的教程是这样的: 官方: https://firebase.google.cn/docs/crashlytics/upgrade-sdk?platform=android#kotlin+ktx_5 要么: https://medium.com/@onkart10/migrating-from-fabric-to-firebase-crashlytics-e8819933c484

      我希望它可以帮助其他人。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-05-08
        • 2014-12-19
        • 1970-01-01
        • 1970-01-01
        • 2014-02-12
        • 2015-06-24
        • 2019-11-02
        • 1970-01-01
        相关资源
        最近更新 更多