Oculus Integration で Firebase Analytics と Crashlytics を設定する
はじめに
Oculus アプリで Firebase Analytics と Crashlytics を実装したので、備忘録としてまとめました。
Firebase とは
アプリを開発の際に、ユーザーベースを拡大、収益を高めるためのツールです。Firebaseを使えば、インフラ構築に手間取ることなくビジネスを収益化し、効率よくアプリを開発し、運用・管理することができるようになります。
スマホアプリでの実装
Firebaseの基礎的な使い方
事前準備
実装
Firebaseをインストールする
"UnityプロジェクトにFirebaseを追加する" の記事に記載されているステップ1〜4に従って実装します。
※ ステップ5はサンプルコードに含まれているため、必須ではありません。
ステップ 1: Firebase プロジェクトを作成する
ステップ 2: アプリを Firebase に登録する
ステップ 3: Firebase 構成ファイルを追加する
ステップ 4: Firebase Unity SDK を追加するダウンロードした firebase_unity_sdkから、 dotnet4 / FirebaseAnalytics.unitypackageと dotnet4 / FirebaseCrashlytics.unitypackageをインポートします。
Firebase Unity SDK は こちら からもダウンロードできます。AndroidAuto-Resolver が有効でない場合、必ず有効に設定します。
Assets > Play Serveces Resolver > Android Resolver -> Settingsテンプレート google-services.jsonを独自のものに置き換えます。
テンプレートは下記の場所に保存されているので上書きします。
プロジェクトコードを有効にする
Firebase Analytics と Crashlytics がプロジェクトに追加されたら、Oculusメニューからサンプルコードを有効にします: Oculus> Samples> Firebase> Enable Firebase Sample
'unsafe'を許可する
クラッシュを強制する的に発生させるために、Crashlyticsサンプルでは C#の unsafeキーワードを使用しています。これはデフォルトでは禁止されているのでunityで設定して動作できるようにする必要があります。unsafeキーワードは、プレーヤーの設定で有効にする事ができます。 : Edit > Project Settings... > Player > Android settings > Allow 'unsafe' code
ビルドして実行
この時点で、サンプルシーンを開いて、いくつかのイベントとクラッシュをトリガーできるはずです。レポートは、Firebaseコンソール で確認できます。
自分の作成したアプリへも、 StartCrashlytics.cs を使用するだけで簡単にクラッシュを解析する事ができます。
symbols.zip ファイルをFirebaseにアップロードする
Scripting Backend を IL2CPP に設定してビルドし、symbols.zip を作成して Firebase にアップロードするとより詳細なクラッシュ報告を確認することが出来ます。
Firebase CLI コマンドを実行して、生成した Crashlytics 互換のシンボル ファイルを Firebase サーバーにアップロードします。
firebase crashlytics:symbols:upload --app=FIREBASE_APP_ID PATH/TO/SYMBOLS
FIREBASE_APP_ID: Firebase Android アプリ ID(パッケージ名ではありません)
Firebase Android アプリ ID の例: 1:567383003300:android:17104a2ced0c9b9b
Firebase アプリ ID を確認する方法
google-services.json の mobilesdk_app_id に記載されています。
Unity 内で直接 APK をビルドした場合: PATH/TO/SYMBOLS は、ビルドが完了したときにプロジェクトのルート ディレクトリに生成される、圧縮されたシンボル ファイルのパスです(例: myproject/myapp-1.0-v100.symbols.zip )。
最後に、強制的にテスト クラッシュを発生させて Crashlytics の設定を完了し、Firebase コンソールの Crashlytics ダッシュボードで最初のデータを確認します。
Android NDK クラッシュ レポートを取得する | Firebase Crashlytics