Swift クラッシュリスティックの実装
アプリが落ちたとき原因を知ることができる、重宝するフレームワーク
本家サイト https://firebase.google.com/docs/crashlytics/get-started?hl=ja ここを見てやればそのままできる。
Podファイルに追加
ちなみにFMDBは関係ない。別のフレームワーク
podファイルが無いときは
pod init
すればPoidファイルができる。フレームワークを入れるためのもの。 xcodeのプロジェクトがあるフォルダへ移動し、当然そこにはPodファイルがある。
pod install
こんな感じでフレームワークが、インストールされる。
必ずxcodeは閉じておかないといけない。
また、インストール後は、必ずアプリ名.xcoworkspaceのアイコンをクリックして起動すること。
そうしないと壊れます。
Xcode でプロジェクトを開き、ナビゲータでプロジェクト ファイルを選択します。
[Select a project or target] プルダウンでメインのビルド ターゲットを選択します。
ターゲットの [Build Phases] タブを開きます。
[+ Add a new build phase] をクリックし、[New Run Script Phase] を選択します。
[Type a script...] テキスト ボックスに次の行を追加します。
xcode10を利用していましたので、[Input Files] にも追加しました。
Firebase プロジェクトを作成する必要があります。
リンク先はこちら
プロジェクトを作成します
指示通りに作業します。ダウンロードした、plistファイルをプロジェクトに追加します。
アプリの起動時に Firebase を接続するには、メインの AppDelegate クラスに以下の初期化コードを追加します。
//この行を追加 import Firebase //これはデリゲートメソッド、はじめからあるメソッド func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { //この行を追加 FirebaseApp.configure()
通信を始めるので、ビルドする。シミュレーターでも実機でも良い。
しばらくして(5分程度) このようにWEBの表示が変わればOK
コンソールに戻って少し設定 ここはFabric時代から利用していた人はすでにインストールされているを選択する。 Fabricは廃止予定。
強制的にクラッシュさせるテスト ここにあるソース書くのだけど、結局デバッグモードで矯正クラッシュさせても、情報は得られない
Test your Firebase Crashlytics implementation
.dSYMファイルは、落ちた事を伝えるときに、どの場所で落ちたかを伝えるファイル。 この設定で良い。
リリースビルドで落ちたときに.dSYMファイルが必要。
ちなみに参考にしたサイト ja.stackoverflow.com
dsmyファイルのupload Firebaseのこのページに記載がある
/path/to/pods/directory/FirebaseCrashlytics/upload-symbols -gsp /path/to/GoogleService-Info.plist -p ios /path/to/dSYMs
すべて、コマンドを実行するフォルダからのpath 通常は、作業フォルダで良い
これはまずupload-symbolsメソッドを実行する。
それはPodsのFirebaseCrashlyticsフォルダに存在する
そうするとpathが出力される
オプションは -gsp
GoogleService-Info.plistへのpathを記載する
-p でdSYMsへのpath
を記載する
dSYMsファイルは、APP Storeからダウンロード可能