Edited at

[ios] firebase crash reportingセットアップしてみた

More than 1 year has passed since last update.


firebase crash reporting とは?


  • firebaseの機能の一つ

  • どこでクラッシュが発生したかレポートにしてくれる


アカウントセットアップ

firebaseでアカウント登録、アプリ登録し、firebase consoleが見れる状態にしておく


cocoapods

pod 'Firebase/Crash'

Podfileに追記し、 pod installする


import


objc

@import Firebase;

// または
#import <Firebase/Firebase.h>


swift

import Firebase



サービスアカウント設定


  • firebase consoleで歯車アイコン>サービスアカウント>クラッシュレポートを選択


  • 新しい秘密鍵を生成を押すと、jsonファイルがDLされるので、そのファイルをxcode projectのあるディレクトリに移動させる



run script設定


  • xcodeでrunscriptを追加する

# Replace this with the GOOGLE_APP_ID from your GoogleService-Info.plist file

GOOGLE_APP_ID=1:my:app:id #←書き換える

# Replace the /Path/To/ServiceAccount.json with the path to the key you just downloaded
"${PODS_ROOT}"/FirebaseCrash/upload-sym "/Path/To/ServiceAccount.json" # ← さっき移動したファイルのファイル名にする(proj直下なら/Path/To/は不要のはず


テスト

appdelegate内などで、

# for objc

assert(false);
# for swift
fatalError()

を実行し、わざとクラッシュさせる

ログを確認

2017-02-27 16:38:49.997 futaba[1734] <Debug> [Firebase/Core][I-COR000018] Already sending logs.

問題なさそう

🔺のクラッシュログをfirebaseのコンソールから確認することはできなかったが、リリース後コンソールを見てみると

image

きちんと集計されていた

image

Firebase Analyticsでもデータを集計していると、ユーザがどういう行動をした結果クラッシュしたかまでデータをマッチングさせて表示してくれる

これは便利!