facebook twitter hatena line email

「Unity/fabricのcrashlytics」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(fabric経由のcrashlytics)
(firebase直のcrashlytics)
行28: 行28:
 
             }
 
             }
 
         });
 
         });
 +
</pre>
 +
 +
強制的にクラッシュ
 +
<pre>
 +
            // Throw an exception to test your Crashlytics implementation
 +
            throw new System.Exception("test exception please ignore");
 
</pre>
 
</pre>
  

2019年6月9日 (日) 23:41時点における版

firebase直のcrashlytics

  1. firebaseからcrashlyticsを選択
  2. unityのfirebaseをDLし、FirebaseCrashlytics.unitypackageをAssets/Import〜からImportする。

以下を追加しcrashlyticsを初期化する。

        // 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;

                // WARNING: Do not call Crashlytics APIs from asynchronous tasks;
                // they are not currently supported.

                // 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.
            }
        });

強制的にクラッシュ

            // Throw an exception to test your Crashlytics implementation
            throw new System.Exception("test exception please ignore");

fabric経由のcrashlytics

こちらは旧版で非推奨です。

fabricのcrashlyticsインストール

  1. fabricでアカウントをつくる
  2. https://www.fabric.io/downloads/unity からFabric.unitypackageファイルをDL
  3. unityのメインメニューからAssets/importpackage/CustomPackageを選択し
  4. DLしてきたFabric.unitypackageを選択しimportボタンを押す
  5. unityのメインメニューからFabric/PrepareFabricからFabricへログインする
  6. crashlyticsを選択しinstallボタンを押しimportボタンを押す
  7. AndroidManifest.xml編集を追加する場合はApplyボタンを押す
  8. sceneにcrashlyticsオブジェクトをドラッグする

fabricとfirebaseを連携

  1. fabricにログイン
  2. fabricの左側にあるfirebaseメニューをクリック
  3. そこからfirebaseにログインし連携する
  4. firebase側からもデータ参照できることを確認

androidのANRのログ

ANRのログは端末側(/data/ant/traces.txt)には残ってるが、fabricでは検出できなかった。

強制的にcrashさせる

Fabric.Crashlytics.Crashlytics.Log("onCrash");
Fabric.Crashlytics.Crashlytics.Crash();

上記crashでcrashlyticsに上がるcrashログ

 Caused by java.lang.RuntimeException
 Forced runtime exception
 	
 io.fabric.unity.crashlytics.android.CrashlyticsAndroidWrapper$1.run (CrashlyticsAndroidWrapper.java:12)
 	
 java.lang.Thread.run (Thread.java:818)