Android application development 第30章:Firebase Crashlytics でのクラッシュレポート

🚨 Firebase Crashlyticsとは?

Firebase Crashlytics(クラッシュリティクス)は、Google が提供しているモバイルアプリ用のリアルタイムクラッシュレポートサービスです。

アプリにクラッシュが発生したときに:

  • どの端末で
  • どんな状況で
  • どのコードで落ちたのか

…を自動で収集・送信し、ダッシュボードで可視化してくれるツールです。


💡 なぜCrashlyticsが必要なの?

開発中は手元で Logcat を使ってエラーを確認できますが、リリース後にユーザー端末で発生するクラッシュは開発者には見えません

Crashlyticsを使うと…

  • 実際のユーザー環境で起きたクラッシュを収集できる
  • 発生頻度や影響範囲を把握できる
  • 優先順位をつけて修正できる

つまり「見えないバグを見えるようにする」ためのツールです。


🔧 セットアップ手順(概要)

Firebase Crashlytics を使うには、まずプロジェクトに Firebase を導入し、Crashlytics SDK を組み込みます。

1. Firebase コンソールでプロジェクト作成

  • Firebase Console にアクセス
  • 新規プロジェクトを作成
  • Android アプリを追加(パッケージ名などを指定)

2. google-services.json の追加

  • Firebase から google-services.json をダウンロードして
  • プロジェクトの app/ フォルダ直下に配置します

3. Gradleの設定

project/build.gradle
classpath 'com.google.gms:google-services:4.3.15' // 最新版に更新
app/build.gradle
plugins {
    id 'com.android.application'
    id 'com.google.gms.google-services'
    id 'com.google.firebase.crashlytics'
}

dependencies {
    implementation 'com.google.firebase:firebase-crashlytics:18.6.1' // 最新版にする
    implementation 'com.google.firebase:firebase-analytics' // Analyticsも必要
}

🚀 動作確認(クラッシュレポート送信)

アプリをビルド・実行後、意図的にクラッシュさせてレポートが送信されるか確認します。

// ボタンなどから呼び出してみる
throw new RuntimeException("Test Crash");

クラッシュすると Firebase の Crashlytics ダッシュボードにログが届き、スタックトレースや端末情報が確認できるようになります。


📊 ダッシュボードの見方

Firebase コンソール内の Crashlytics ページには:

情報内容
クラッシュの頻度ユーザーあたりのクラッシュ率など
スタックトレースどのクラス・メソッドで落ちたか
対象端末Androidのバージョン、端末名など
クラッシュのトレンドバージョンごとの推移、増減など

これにより、どのバージョンで多発しているか原因がコードのどこにあるかが一目で分かります。


✅ 開発中の注意点

  • 開発中にクラッシュを投げても、送信までに数分〜数十分かかる場合があります
  • リリースビルドの方が確実に送信されます
  • Proguard(難読化)を使っている場合はマッピングファイルをFirebaseにアップロードしておくと、読みやすいスタックトレースになります

🧠 まとめ

項目内容
Crashlytics とはアプリのクラッシュをリアルタイムで可視化するFirebaseのサービス
主な機能スタックトレース収集・ユーザー影響の把握・クラッシュトレンド分析
導入手順Firebase設定 → SDK導入 → google-services.json設置 → Gradle設定
注意点リリースビルドでの確認が確実/Proguard対応に注意

mh

Related Posts

Android application development 第29章:キーストアと署名

Android application development 第28章:ビルドタイプとプロダクトフレーバー

You Missed

Google Cloud Platform エンジニア向け教科書:実践から認定まで : はじめに

  • 投稿者 mh
  • 5月 30, 2025
  • 4 views

現場で使えるChrome DevTools実践ガイド 第6章:Sourcesパネルでのブレークポイントとステップ実行

  • 投稿者 mh
  • 5月 30, 2025
  • 14 views

Kubernetes Learning 第26章:標準的なログ取得方法(kubectl logs)〜Podの中で何が起きているかをのぞいてみよう〜

  • 投稿者 mh
  • 5月 30, 2025
  • 7 views

Android application development 第30章:Firebase Crashlytics でのクラッシュレポート

  • 投稿者 mh
  • 5月 30, 2025
  • 7 views

Kubernetes Learning 第25章:Replica数と冗長性の設計 〜止まらないシステムのために〜

  • 投稿者 mh
  • 5月 29, 2025
  • 17 views

Android application development 第29章:キーストアと署名

  • 投稿者 mh
  • 5月 29, 2025
  • 17 views