[Android] 034. App Quality Insights(Firebase Crashlytics)

Android Studioから使えと暗黙のメッセージが出てるような気のするApp Quality Insightsを使ってみます

App Quality Insightsは昨年のElectric Eelで追加された機能でFirebase Crashlyticsを使ってスタックトレースを見る機能です

App Quality Insightsのdeveloperの説明は以下
https://developer.android.com/studio/debug/app-quality-insights?hl=ja

今回はAndroid StudioからFirebase Crashlyticsを追加してApp Quality Insightsで確認の流れです

※ IguanaでPlay ConsoleのAndroid Vitalsで収集された内容もApp Quality Insightsで確認できるようになるそうです
Firebase Crashlyticsを使用する必要がなくなるのではなく両方使うとより不具合の調査がしやすくなるようです
https://developer.android.com/distribute/best-practices/launch/debug-crashes?hl=ja&authuser=1

事前準備

開発用のGoogleアカウントを用意しときます
これはFirebaseで使います
ついでにそのアカウントでAndroid StudioにSign inしておきましょう
またChromeを既定のブラウザにしてそのアカウントでChromeにログインしておくと作業がスムーズです

Firebase設定

Firebaseにプロジェクトの追加や依存関係設定などはFirebaseのドキュメントでは手動が推奨されてますがAndroid StudioのFirebase Assistantで設定していきます
https://firebase.google.com/docs/android/setup?authuser=0&hl=ja

Android StudioのメニューのTool – Firebaseを実行してCrashlyticsのGet started with Firebase Crashlyticsを選択します

あとはステップの内容にそって進めていきます

① Connect to Firebase

Firebaseのログインが開発用のアカウントであることを確認してからプロジェクトを作成ボタンを押します
Chromeのログインユーザでは無いので注意してください

Firebaseのプロジェクト名はAndroid Studioのプロジェクト名と同じものが表示されていると思うので必要なら変えてから続行します

次のステップでこのプロジェクトでGoogleアナリティクスを有効にするの設定がでますが、今回はCrashlytics単体を試すので無効にして続行を押します

新しいプロジェクトの準備ができましたが表示されたら続行を押します

Firebase Android アプリがFirebaseに作成されました。が表示されたら接続を押します

Android Studio側での設定

②Add the Crashlytics SDK and plugin to your app

ボタンを押すだけで自動で依存関係の設定をしてくれます
google-services.jsonも自動で配置してくれるので楽です
ただlibs.version.tomlには対応してないので必要なら手動で設定してください

③Force a test crash to finish setup

ここではJetpack Compose環境なのでサンプルコードを参考に以下を実装してクラッシュを発生させます

Column {
    Button(onClick = { throw RuntimeException("Test Crash") }) {
        Text("Test Crash")
    }
}

App Quality Insightsで確認

メニュー一番右のLast refreshedを実行するとクラッシュ内容が表示されています

Stack Traceの上のView on FirebaseのリンクからFirebase上での内容も確認できます


Android Studio Giraffe 2022.3.1 Patch 1 built on August 17, 2023