Firebase Analyticsのイベント送信について調べた

2019年10月31日に「AndroidとiOS向けのGoogle Analytics」のサポートが終了します。 そこで、よりモバイルに特化したFirebase Analyticsに移行すべく、ひとまず調べてみました。
2019.07.01

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

サーバーレス開発部あらため、CX事業本部の藤井元貴です。

2019年10月31日に「AndroidとiOS向けのGoogle Analytics」のサポートが終了します。

そこで、よりモバイルに特化したFirebase Analyticsに移行すべく、ひとまず調べてみました。(今更ですが)

イベント

下記の種類があります。

  • 自動送信されるイベント
  • 自分で送信するイベント

なお、送信されたイベントの詳細(パラメータ)は、Firebase Analyticsコンソールでは見れないため、BigQueryで見る必要があります。

自動送信されるイベント

下記ドキュメントに書かれています。

自分で送信するイベント

SDKのLogEvent()を使用します。

このとき、「イベントの名前(1個)」と「パラメータ(25個まで)」を指定します。

sample.kt

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

イベントの名前

「定義済みイベント名」と「任意イベント名」が使えます。

イベント名前は、最大で500個まで使用可能です。(自動送信イベントと定義済みイベントも含むように読めます)

定義済みイベントでは、下記が使いやすそうです。

  • SELECT_CONTENT
  • VIEW_ITEM
  • VIEW_ITEM_LIST

パラメータ

パラメータは、KeyとValueの組み合わせで表現され、Keyには「定義済みパラメータ名」と「任意パラメータ名」が使えます。 1個のイベントには、最大で25個のパラメータが指定可能です。

定義済みパラメータ名では、下記が使いやすそうです。

  • CONTENT
  • CONTENT_TYPE
  • GROUP_ID
  • ITEM_CATEGORY
  • ITEM_ID
  • ITEM_LIST
  • ITEM_NAME

ユーザープロパティ

LogEvent()によるイベント送信時、ユーザー プロパティも付随して送信されます。

下記の種類があります。

  • 自動収集されるユーザプロパティ
  • 自分で設定するユーザプロパティ

自動収集されるユーザプロパティ

下記ドキュメントに書かれています。

自分で設定するユーザプロパティ

SDKを使用して設定します。 ユーザープロパティは、プロジェクト内で25個まで設定可能です。

画面情報

モバイル版のGoogle Analyticsでは明示的に送信してましたが、Firebase Analyticsでは自動送信されます。手動送信もできます。

情報収集の制御

「ユーザが同意してから送信すること。いつでも無効にできること。」という要件にも対応できます。

最後に

Google Analyticsの「Category / Action / Label / Value」をFirebase Analyticsの「Event / Param」に置き換えるのが大変そうです。