无法将 Fabric Crashlytics 升级至 Firebase Crashlytics

4

我试图按照官方升级文档进行操作,但在更改gradle文件中的每个相关行后,我遇到了以下错误:

评估项目“: app”时发生问题。 应用程序插件[id 'com.google.firebase.crashlytics']失败 无法为类型为com.google.firebase.crashlytics.buildtools.gradle.CrashlyticsExtension的对象设置未知属性'obfuscatorVersion'。

这些是Firebase版本:

firebaseCrashlytics = '17.0.1'

firebaseAnalytics = '17.4.3'

其他相关依赖项:

classpath 'com.android.tools.build:gradle:3.6.3'

classpath 'com.google.gms:google-services:4.3.3'

classpath 'com.google.firebase:firebase-crashlytics-gradle:2.1.1'

如果我注释掉此行:

//apply plugin: 'com.google.firebase.crashlytics'

一切都正常运行... 我无法升级到gradle 4.0.0,因为DexGuard不支持它。

4个回答

8

好的,我明白了。 如果任何人使用 DexGuard,必须在 DexGuard 插件之前应用 Crashlytics 插件。这段神奇的代码链接在发布说明中...


请确认它是否正常工作。你能附上发布说明的链接吗? - Robust
我不知道公共发布说明在哪里,但如果您有有效的许可证,可以在docs/gradle/dexguard-plugin.html#firebaseCrashlytics路径下找到它。 - just
我刚刚找到了它。谢谢你。真是一个很棒的DexGuard。 - Robust

3

如果您在使用Android Studio 4.1时遇到构建问题,请使用以下配置:

  • Android Gradle插件版本3.6.0
  • Gradle版本6.5
implementation platform('com.google.firebase:firebase-bom:26.2.0')
implementation 'com.google.firebase:firebase-crashlytics'

classpath 'com.google.gms:google-services:4.3.4'
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.4.1'```

1

看起来是gradle版本问题。

使用更新的gradle版本: classpath "com.android.tools.build:gradle:4.0.0"(最新版)

或者 classpath 'com.android.tools.build:gradle:3.6.3'(旧版)

并更新gradle-wrapper.properties: distributionUrl=https://services.gradle.org/distributions/gradle-6.1.1-all.zip(最新版)

or distributionUrl=https://services.gradle.org/distributions/gradle-5.6.4-all.zip(old)


我将每个依赖项更新到最新版本,但这并没有解决我的问题。 - just
// 移除 Fabric 的 Maven 仓库。 maven { url 'https://maven.fabric.io/public' }// 添加 Google 的 Maven 仓库(如果尚未添加)。 google() - SShil

-2

FLUTTER开发:

为了防止以后在FLUTTER 框架遇到同样的问题,我在这里列出了问题并且问题出现在文件build.gradle中,它给了我以下问题:

Build file 'C:\Users\MyUserName\AndroidStudioProjects\FlutterX UI\android\app\build.gradle' line: 23

  • 出现了什么问题: 对项目':app'进行评估时出现问题。

应用插件'com.google.firebase.crashlytics'失败。 Crashlytics被应用于没有安卓插件的项目中。请确保在适用于您的项目的相应安卓插件之后应用Crashlytics插件。

而我在pubspec.yaml中使用这些插件: firebase_crashlytics, firebase_core.

因此,造成了我出现问题的原因是在build.gradle文件中,具体在以下这几行:

apply plugin: 'com.google.firebase.crashlytics'

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

应用插件:'com.android.application'

我只是将它们重新排列如下,就像魔法一样:

应用插件:'com.android.application'

应用插件:'com.google.firebase.crashlytics'

应用插件:'com.google.gms.google-services'

希望这能帮助未来的某个人。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接