关于这篇文章

在 Unity 中将 Firebase Crashlytics 用于 Android 应用程序时,我总结了我遇到的问题。

版本

统一 2021.3.11f1
Firebase 统一 SDK 9.6.0

现象

Firebase 文档当我根据创建一个应用程序并运行它时,在@987654325Unity AndroidアプリでFirebase Crashlyticsを使うのにハマった話出现错误
Unity AndroidアプリでFirebase Crashlyticsを使うのにハマった話我希望它出现在构建的时间)

10-17 15:19:00.821 17474 17552 E firebase: Failed to read Firebase options from the app's resources. Either make sure google-services.json is included in your build or specify options explicitly.

突然的结论

对于 Unity 2020.1 及更高版本Firebase 文档Firebase 不能以这种方式工作Unity AndroidアプリでFirebase Crashlyticsを使うのにハマった話
请使用 Unity 2019Firebase 博客然后他说。

使用 Unity 2020.1 及更高版本

作为前提,Firebase 文档假设工作

在 Unity 2020.1 或更高版本中启用 Firebase

在 Build Settings -> Player Settings 中打开 Player
在播放器 -> 公共设置中

  • 自定义主 Gradle 模板
  • 自定义 Gradle 属性模板

勾选复选框

将以下内容添加到Assets/Plugins/Android/mainTemplate.gradle 的末尾

android {
    sourceSets {
        main {
            def unityProjectPath = $/file:///**DIR_UNITYPROJECT**/$.replace("", "/")
            res.srcDirs += (unityProjectPath +  '/Assets/Plugins/Android/Firebase/res/values/google-services.xml')
        }
    }
} 

Assets/Plugins/Android/gradleTemplate.properties末尾添加以下内容

android.useAndroidX=true
android.enableJetifier=true 

启用 Crashlytics 的额外工作

在 Build Settings -> Player Settings 中打开 Player
在播放器中 -> 公共设置

  • 自定义启动器 Gradle 模板
  • 自定义基础 Gradle 模板

勾选复选框

将以下内容添加到 Assets/Plugins/Android/baseProjectTemplate.gradleallprojects.buildscript.dependencies

// Add the Crashlytics Gradle plugin.
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.2.0'

将以下内容添加到Assets/Plugins/Android/launcherTemplate.gradle 的末尾

// Apply the Crashlytics Gradle plugin
apply plugin: 'com.google.firebase.crashlytics' 

在最后

确认在 Asset 文件夹中放置 google-services.json (在我的环境中,它消失得无影无踪)
重启 Unity(重要Unity AndroidアプリでFirebase Crashlyticsを使うのにハマった話

参考


原创声明:本文系作者授权爱码网发表,未经许可,不得转载;

原文地址:https://www.likecs.com/show-308630544.html

相关文章: