🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Firebase

Firebaseは、Googleが提供するBasSサービスの一つ。リアルタイム通知可能、並びにアクセス制御ができるオブジェクトデータベース機能を備えます。さらに認証機能、アプリケーションのログ解析機能などの利用も可能です。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

解決済

1回答

4944閲覧

【Swift】Crashlyticsを使ってのクラッシュレポート収集ができない

ysda

総合スコア65

Firebase

Firebaseは、Googleが提供するBasSサービスの一つ。リアルタイム通知可能、並びにアクセス制御ができるオブジェクトデータベース機能を備えます。さらに認証機能、アプリケーションのログ解析機能などの利用も可能です。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2019/11/19 07:14

編集2019/11/19 07:22

前提・実現したいこと

Crashlyticsを使用して、クラッシュレポート収集機能を実装したサンプルアプリを作成しているのですが、肝心のクラッシュ情報がFirebaseで反映されない状態になっております。
こちらの解決方法についてご教示いただければと思います。

発生している問題・エラーメッセージ

iOS で Firebase Crashlytics の使用を開始する
上記のFirebase公式サイトに掲載されている手順を踏んで設計し、アプリをシュミレータでビルドしてアプリがクラッシュするところまでは問題なかったのですが、
ダッシュボードには特にクラッシュ情報が反映されていない状態になっております。
ダッシュボード

クラッシュレポートが収集できない原因?

Firebase Crashlyticsを使ってみた
上記サイトを拝見したところ、どうやらdYSMファイルなるものをアップロードしなければならない可能性があったため、Firebaseのコンソール画面を確認したところ、以下のような表示でした。
イメージ説明

試しにdYSMファイルをアップロードしようと参考サイトからアプリのdSYMファイルが配置されている絶対パスを取得しようとしたのですが、うまくいきませんでした。
以下が参考にしたものです。

/Users/[ユーザー名]/Library/Developer/Xcode/DerivedData/[プロジェクト名]-[ランダムな文字列]/Build/Products/Debug-iphoneos/[プロジェクト名].app.dSYM

上記のパスについて、

[ユーザー名]→PCのユーザー名

という認識で間違い無いと思うのですが、
(/Users/[ユーザー名]/Library/Developer/Xcode/DerivedDataまではターミナル上で移動できました)

[プロジェクト名]-[ランダムな文字列]

こちらの部分がそれぞれどこのことを指しているのかが不明でした。

一応考えられる可能性として、

[プロジェクト名]→Xcodeの作成したサンプルアプリのプロジェクト名、Firebaseのプロジェクト名、FirebaseのプロジェクトIDのハイフンより前の部分 [ランダムな文字列]→FirebaseのプロジェクトIDのハイフンより後の部分

とあたりをつけてそれぞれのパターンをターミナル上で試してみたのですが、うまくいきませんでした。

補足情報(FW/ツールのバージョンなど)

Xcode11
Swift5.1
を使用しています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ysda

2019/11/20 00:14

ご助言ありがとうございます! そちらの方法につきましては昨日、 1.ビルドをする 2.一度アプリを止める 3.再度ビルドを行う 4.クラッシュさせる 5.5分ほど放置 の手順で行ったのですが、レポートには反映されませんでした。 (ちなみに今確認したところ、反映されていない状態のままでした)
hayabusabusash

2019/11/20 00:18

いえ、再ビルドは行わずにシミュレーターもしくは実機のアプリのアイコンをタップして起動させ、 そのままクラッシュを行ってみてください。 1. ビルドする 2. アプリを止める 3. 再度ビルドは行わず、アプリのアイコンをタップして起動させる 4. クラッシュさせる操作を行う のような手順です! 一度ご確認いただけないでしょうか?
ysda

2019/11/20 00:55

そちらの方法で試したところ、クラッシュレポートが反映されていることが確認できました。 ありがとうございます。とても助かりました! 再度アプリを開く部分を完全に勘違いしておりました。 是非ともベストアンサーにさせていただきたいのですが、teratailって質問欄のものはベストアンサーにできないのでしょうか?(本題とそれてしまってすみません) もしできないのであれば、お手数にはなってしまうのですが、解答欄の方に記述していただけると幸いです。
guest

回答1

0

ベストアンサー

以下の手順で解決できたそうです!

  1. ビルドする
  2. アプリを止める
  3. 再度ビルドは行わず、アプリのアイコンをタップして起動させる
  4. クラッシュさせる操作を行う

公式にも

Xcode で [stop Stop running the scheme or action] をクリックして、アプリの初期インスタンスを閉じます。この初期インスタンスには、Crashlytics の動作を妨げるデバッガが含まれています。

とあるので、
ビルドした直後のものでは収集は行われないんだと思います。
私もこれにハマったので、情報を共有できてよかったです????

投稿2019/11/20 01:01

hayabusabusash

総合スコア767

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問