強制的にクラッシュさせて実装状況をテストする
既存の
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"); } } }
アプリをビルドし、ビルドの完了後にシンボル情報をアップロードします。
iOS+: Firebase Unity Editor プラグインが、シンボル ファイルをアップロードするように Xcode プロジェクトを自動的に構成します。
Android: IL2CPP を使用する Android アプリの場合は、Firebase CLI
crashlytics:symbols:upload
コマンドを実行して、シンボル ファイルをアップロードします。
アプリを実行します。アプリを実行したら、デバイスログを監視し、
CrashlyticsTester
で例外がトリガーされるのを待ちます。iOS+: Xcode の下部ペインでログを確認します。
Android: ターミナルで
adb logcat
コマンドを実行してログを確認します。
Firebase コンソールの Crashlytics ダッシュボードに移動して、テスト クラッシュを確認します。
コンソールを更新し、5 分経過してもテスト クラッシュが表示されない場合は、デバッグ ロギングを有効にしてみてください(次のセクション)。
Crashlytics のデバッグ ロギングを有効にする
Crashlytics ダッシュボードにテスト クラッシュが表示されない場合は、Crashlytics のデバッグ ロギングが問題解決に役立ちます。
アプリの初期化の部分に次のコードを追加して、Firebase のデバッグ ロギングを有効にします。
Firebase.FirebaseApp.LogLevel = Firebase.LogLevel.Debug;
強制的にテスト クラッシュを発生させます。この方法については、このページの最初のセクションで説明しています。
5 分経過しても Firebase からのログが表示されない場合、または Firebase コンソールの Crashlytics ダッシュボードにテスト クラッシュが表示されない場合は、Firebase サポートにお問い合わせください。その際に、詳細なトラブルシューティングに役立つログ出力のコピーをご提出ください。
次のステップ
- クラッシュ レポートの設定をカスタマイズするために、オプトイン レポート、ログ、キー、非致命的なエラーの追跡を追加する。