測試 Crashlytics 導入作業


強制當機以測試實作

  1. 找出現有的 GameObject,然後加入下列指令碼。這個指令碼會在您執行應用程式後幾秒內導致測試異常終止。

    using System;
    using UnityEngine;
    
    public class CrashlyticsTester : MonoBehaviour {
    
        int updatesBeforeException;
    
        // Use this for initialization
        void Start () {
          updatesBeforeException = 0;
        }
    
        // Update is called once per frame
        void Update()
        {
            // Call the exception-throwing method here so that it's run
            // every frame update
            throwExceptionEvery60Updates();
        }
    
        // A method that tests your Crashlytics implementation by throwing an
        // exception every 60 frame updates. You should see reports in the
        // Firebase console a few minutes after running your app with this method.
        void throwExceptionEvery60Updates()
        {
            if (updatesBeforeException > 0)
            {
                updatesBeforeException--;
            }
            else
            {
                // Set the counter to 60 updates
                updatesBeforeException = 60;
    
                // Throw an exception to test your Crashlytics implementation
                throw new System.Exception("test exception please ignore");
            }
        }
    }
    
  2. 建構應用程式,並在建構作業完成後上傳符號資訊。

    • iOS+:Firebase Unity 編輯器外掛程式會自動設定 Xcode 專案,以便上傳符號檔案。

    • Android:如果是使用 IL2CPP 的 Android 應用程式,請執行 Firebase CLI crashlytics:symbols:upload 指令來上傳符號檔案。

  3. 執行應用程式。應用程式執行後,請觀察裝置記錄,並等待 CrashlyticsTester 觸發例外狀況。

    • iOS+:在 Xcode 的底部窗格中查看記錄。

    • Android:在終端機中執行以下指令,即可查看記錄檔:adb logcat

  4. 前往 Firebase 主控台的 Crashlytics 資訊主頁,查看測試異常終止情形。

如果您已重新整理控制台,但五分鐘後仍未看到測試異常終止,請嘗試啟用偵錯記錄功能 (下一節)。

啟用 Crashlytics 的偵錯記錄功能

如果您沒有在 Crashlytics 資訊主頁中看到測試異常終止的情況,可以使用 Crashlytics 的偵錯記錄功能,協助追蹤問題。

  1. 在應用程式初始化時加入下列程式碼,即可啟用 Firebase 的偵錯記錄功能:

    Firebase.FirebaseApp.LogLevel = Firebase.LogLevel.Debug;
  2. 強制測試當機。本頁第一節說明如何執行這項操作。

如果五分鐘後,您在 Firebase 主控台的 Crashlytics 資訊主頁中,沒有看到 Firebase 記錄或測試異常終止的記錄,請與 Firebase 支援團隊聯絡,並提供記錄輸出內容的副本,以便我們進一步協助您排解問題。

後續步驟