ไปที่คอนโซล

Firebase Crashlytics 使用入门

本快速入门将向您介绍如何设置 Firebase Crashlytics,以便您能够在 Firebase 控制台中获取完整详尽的崩溃报告。

准备工作

您必须先注册 Unity 项目并将其配置为使用 Firebase,然后才能设置 Crashlytics

  • 如果您的 Unity 项目已在使用 Firebase,则表示您已注册 Unity 项目并已将其配置为使用 Firebase。

  • 如果您还没有 Unity 项目,可以下载一个示例应用

    请注意,将 Firebase 添加到 Unity 项目需要在 Firebase 控制台中和打开的 Unity 项目中执行若干任务(例如,从控制台下载 Firebase 配置文件,然后将这些配置文件移动到 Unity 项目中)。

第 1 步:在 Firebase 控制台中设置 Crashlytics

  1. Firebase 控制台的左侧导航面板中点击 Crashlytics

  2. 如果您的 Firebase 项目中注册了多个应用,请从控制台顶栏中的 Crashlytics 旁边的下拉列表中选择刚刚添加的应用。

  3. 点击设置 Crashlytics

  4. 选择此应用是第一次安装 Crashlytics(它没有安装过此 SDK 的任何版本)

第 2 步:添加 Crashlytics SDK

  1. 下载 Firebase Unity SDK,然后将其解压缩到方便的位置。

    Firebase Unity SDK 不专用于特定平台。

  2. 在您打开的 Unity 项目中,依次转到 Assets > Import Package > Custom Package

  3. 从解压缩后的 SDK 中,选择导入 Crashlytics SDK (FirebaseCrashlytics.unitypackage)。

    您也可以导入其他任何受支持的 Firebase 产品

  4. 在“Import Unity Package”窗口中,点击 Import

第 3 步:初始化 Crashlytics

  1. 创建一个新的 C# 脚本,然后将其添加到场景中的 GameObject

    1. 打开您的第一个场景,然后创建一个名为 CrashlyticsInitializer 的空 GameObject

    2. 在新对象的 Inspector 中点击 Add Component

    3. 选择 CrashlyticsInit 脚本以将其添加到 CrashlyticsInitializer 对象中。

  2. 在该脚本的 Start 方法中初始化 Crashlytics:

      using System.Collections;
      using System.Collections.Generic;
      using UnityEngine;
    
      // Import Firebase
      using Firebase;
    
      public class CrashlyticsInit : MonoBehaviour {
          // Use this for initialization
          void Start () {
              // Initialize Firebase
              Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task => {
                  var dependencyStatus = task.Result;
                  if (dependencyStatus == Firebase.DependencyStatus.Available)
                  {
                      // Create and hold a reference to your FirebaseApp,
                      // where app is a Firebase.FirebaseApp property of your application class.
                      // Crashlytics will use the DefaultInstance, as well;
                      // this ensures that Crashlytics is initialized.
                      Firebase.FirebaseApp app = Firebase.FirebaseApp.DefaultInstance;
    
                      // Set a flag here for indicating that your project is ready to use Firebase.
                  }
                  else
                  {
                      UnityEngine.Debug.LogError(System.String.Format(
                        "Could not resolve all Firebase dependencies: {0}",dependencyStatus));
                      // Firebase Unity SDK is not safe to use here.
                  }
              });
          }
    
        // Update is called once per frame
        void Update()
          // ...
      }

    添加并初始化 SDK 后,Crashlytics 就会立即自动开始侦听并收集崩溃报告。

第 4 步:构建或运行您的项目

将您的项目导出到 iOSAndroid 后,请验证该项目是否已正确导出。

如果在将您的项目与下面的示例导出配置进行比较后似乎缺少文件,请打开 Unity 编辑器,然后运行 Google Play Services Resolver

iOS

Android

运行解析器(可选)

Google Play Services Resolver 可确保您的 Unity 项目具有将应用导出到 iOSAndroid 的相应依赖项。

如需详细了解该解析器,请访问 Unity Jar Resolver 的自述文件。

iOS

iOS Resolver 会自动运行并利用 Cocoapods 将 iOS 依赖项放入导出的 Pods 目录中。

  • 要将 CocoaPods 下载到您的机器,请执行以下操作:

    • 依次转到 Assets > Play Services Resolver > iOS Resolver > Install Cocoapods
  • 要允许或禁止生成 Podfile(可选),请执行以下操作:

    • 依次转到 Assets > Play Services Resolver > iOS Resolver > Settings

    Android

    Android Resolver 会自动运行,并利用 gradle 将 Android 依赖项放入 Assets/Plugins/Android 中。

  • 要手动运行该解析器,请执行以下操作:

    • 依次转到 Assets > Play Services Resolver > Android Resolver > Resolve
  • 要启用或停用自动解析(默认情况下处于启用状态),请执行以下操作:

    • 依次转到 Assets > Play Services Resolver > Android Resolver > Settings

观看视频教程

如需详细的 Crashlytics 上手指南,请观看以下视频教程:

您可以通过 Firebase 在 YouTube 上的频道找到更多视频。

后续步骤

  • 测试您的实现 - 强制造成一次崩溃以在 Firebase 控制台中生成崩溃报告,从而测试您的 Crashlytics 设置。

  • 自定义崩溃报告 - 在您添加 SDK 后,Crashlytics 就会立即自动开始收集崩溃报告,但您也可以通过添加自选式报告、日志、键甚至跟踪非严重错误来自定义您的设置。