Google は、黒人コミュニティのための人種的公平の促進に取り組んでいます。詳細をご覧ください。

イベントをロギングする

このガイドでは、アプリでイベントをロギングする方法について説明します。

イベントは、ユーザーの操作、システム イベント、エラーなど、アプリで起こっていることを把握するのに役立ちます。

アナリティクスは、一部のイベントに関するログを自動で記録します。イベントを受信するためのコードを記述する必要はありません。それ以外のデータをアプリで収集する場合は、最大 500 種類までのアナリティクス イベントをログに記録できます。アプリで記録できるログの量に制限はありません。イベント名では大文字と小文字が区別されます。そのため、大文字と小文字の使い方だけが異なっている同じ名前の 2 つのイベントは、2 つの別個のイベントとしてログに記録されます。

始める前に

プロジェクトを設定し、Firebase 向け Google アナリティクスの説明に従ってアナリティクスにアクセスできることを確認してください。

イベントをロギングする

FirebaseAnalytics インスタンスを作成すると、そのインスタンスで logEvent() メソッドを使って、イベントをログに記録できるようになります。

アナリティクス SDK には、小売、e コマース、旅行、ゲームなどといったさまざまな種類のアプリでよく使われるイベントが推奨イベントとして多数定義されており、すぐに使うことができます。こうしたイベントの詳細と使い方については、Firebase ヘルプセンターのイベントとプロパティをご覧ください。

推奨イベントの実装方法の詳細については、次の記事をご覧ください。

次に示す例では、SELECT_CONTENT イベントをログに記録する方法を説明します。

Java

Bundle bundle = new Bundle();
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, id);
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, name);
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "image");
mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_CONTENT, bundle);

Kotlin+KTX

firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM) {
    param(FirebaseAnalytics.Param.ITEM_ID, id)
    param(FirebaseAnalytics.Param.ITEM_NAME, name)
    param(FirebaseAnalytics.Param.CONTENT_TYPE, "image")
}

既定のパラメータの他にも、あらゆるイベントに次のパラメータを追加できます。

  • カスタム パラメータ: アナリティクス レポートに報告するように登録できます。オーディエンスの定義の際にフィルタとして使用できます。定義したユーザーリストはあらゆるレポートに適用できます。アプリが BigQuery プロジェクトとリンクされている場合、カスタム パラメータは BigQuery にエクスポートされるデータにも含まれます。

  • VALUE パラメータ: VALUE は、イベントに関連する主要な指標の蓄積に役立つ汎用パラメータです。そのようなイベントにはたとえば収益、距離、時間、得点などがあります。

推奨されるイベントの種類では収集できないデータをアプリで収集したい場合は、次の例で示すように独自のカスタム イベントを記録することができます。

Java

Bundle params = new Bundle();
params.putString("image_name", name);
params.putString("full_text", text);
mFirebaseAnalytics.logEvent("share_image", params);

Kotlin+KTX

firebaseAnalytics.logEvent("share_image") {
    param("image_name", name)
    param("full_text", text)
}

デフォルトのイベント パラメータを設定する

setDefaultEventParameters を使用して、複数のイベントに共通するパラメータをログに記録できます。デフォルトのパラメータは、ログに記録される今後のすべてのイベントに関連付けられます。

Java

Bundle parameters = new Bundle();
params.putString("level_name", "Caverns01");
params.putInt("level_difficulty", 4);
mFirebaseAnalytics.setDefaultEventParameters(parameters);

Kotlin+KTX

val parameters = Bundle().apply {
    this.putString("level_name", "Caverns01")
    this.putInt("level_difficulty", 4)
}

firebaseAnalytics.setDefaultEventParameters(parameters)

logEvent() メソッドでパラメータが指定されている場合は、デフォルトではなくその値が使用されます。

デフォルトのパラメータをクリアするには、パラメータを null に設定して setDefaultEventParameters メソッドを呼び出します。

Android Studio のデバッグログでイベントを表示する

詳細ロギングを有効にして SDK によるイベントのロギングをモニタリングし、イベントが正しく記録されているかどうかを確認できます。対象となるのは、自動で記録されるイベントと手動で記録されるイベントの両方です。

詳細ログを有効にするには、次の一連の adb コマンドを入力します。

adb shell setprop log.tag.FA VERBOSE
adb shell setprop log.tag.FA-SVC VERBOSE
adb logcat -v time -s FA FA-SVC

このコマンドを入力すると Android Studio の logcat にイベントが表示され、イベントが送信されているかどうかを即座に確認できます。

ダッシュボードでイベントを表示する

Firebase コンソールのダッシュボードでは、イベントに関する集約された統計情報を表示できます。これらのダッシュボードは、一日を通して定期的に更新されます。すぐにテストを行いたい場合は、前のセクションで説明した logcat の出力を使用してください。

このデータにアクセスするには、Firebase コンソールの [イベント] ダッシュボードに移動します。このダッシュボードには、アプリによってロギングされたイベントの種類ごとに自動的に作成されたイベント レポートが表示されます。