にとろん
既にFirebase Analyticsをプロジェクトに導入している人を対象にしています。まだ実装していない人は、
こちらの記事を参考にしてください。
[SwiftUI]Firebase Analyitcsのカスタムイベント・ユーザープロパティーを実装する目次
イベントの種類
Firebaseのイベントには大きく2種類あります。1つ目は自動送信されるイベントで2つ目が自分で実装するイベントです。
-
自動送信されるイベント
-
自分で送信するイベント
-
推奨イベント
- カスタムイベント→こちらの記事で実装しています
-
なお、カスタムイベントで送信されたイベントの詳細(パラメータ)は、Firebase Analyticsコンソールでは見れないため、BigQueryで見る必要があります。
自動送信されるイベント
FirebaseのSDKを実装したら自動的に収集されるイベントが存在します。
イベントのパラメータを追加するときなどには、左側のペインで [イベント] > [すべてのイベント] をクリックします。
収集できるイベントはアプリとウェブで多少異なります。詳しくは公式リファレンスを参考にしてください。
すべてのイベント(カスタム イベントを含む)で、次のパラメータがデフォルトで収集されます。
- language → ユーザーの使用している言語
- page_location → ページの場所
- page_referrer → ページの参照元
- page_title → ページのタイトル
- screen_resolution → 画面の大きさ?
自動収集されるイベントの例
Firebase公式サイトを参考にしています。
ここでは、私が実装しているアプリで収集できているイベントを紹介します。
admob広告を実装しているとき
イベント名 | トリガーされるイベント | 取得できるパラメーター |
---|---|---|
ad_click | ユーザーが広告をクリックしたとき | ad_event_id |
ad_exposure | Mobile Ads SDK によって配信された広告が画面に 1 つ以上表示されたとき | firebase_screen firebase_screen_id firebase_screen_class exposure_time |
ad_impression | ユーザーに広告が表示されたとき | ad_event_id |
ad_query | Mobile Ads SDK によって広告のリクエストが行われたとき | ad_event_id |
ad_reward | Mobile Ads SDK によって配信されたリワード広告により特典が付与されたとき | ad_unit_id reward_type reward_value |
adunit_exposure | Mobile Ads SDK によって配信された広告ユニットが画面に表示されたとき | firebase_screen firebase_screen_id firebase_screen_class exposure_time |
基本動作
イベント名 | トリガーされるイベント | 取得できるパラメーター |
---|---|---|
app_update | アプリが新しいバージョンに更新されて再起動されたとき | previous_app_version |
first_open | ユーザーがアプリをインストールまたは再インストールした後に、そのアプリを初めて起動したとき | previoius_gmp_app_id updated_with_analytics previous_first_open_count system_app system_app_update deferred_analytics_collection reset_analytics_cause engagement_time_msec |
os_update | osが新しいバージョンに更新されたとき。 | previous_os_version |
screen_view | スクリーンが移動したとき。 | firebase_screen firebase_screen_class firebase_screen_id firebase_previous_screen firebase_previous_class firebase_previous_id engagement_time_msec |
session_start | ユーザーがアプリやウェブサイトを利用したとき | なし |
自動収集イベントで、ユーザーがどのような行動を行っているかの情報を収集できます。
しかし、特定のボタンや条件を満たした時にトリガーしたいイベントもあります。
そこで自分で送信するイベントを実装します。
自分で送信するイベント
自動収集されるイベントだけでなく自分で任意の場所にイベントを作成することができます。
自分でイベントを作成する時にFirebaseでは推奨イベントとカスタムイベントが存在します。
Firebaseの推奨イベントとは
アプリカテゴリに基づいて収集可能なイベントが推奨されます。
推奨イベントをログに記録すると、最新のアナリティクス機能とデータの統合が利用可能になりそのメリットを享受できます。
推奨イベントの紹介
全てのカテゴリのアプリで推奨されるイベントの紹介を行います。この表にあるパラメータが実際にログで受け取れる値になります。
イベント | 発生するタイミング | パラメーター |
---|---|---|
earn_virtual_currency | ユーザーが仮想通貨を獲得したとき | virtual_currency_name value |
join_group | ユーザーがグループに参加したときさまざまなクランやユーザー グループの人気度を追跡できます。 | group_id |
login | ユーザーがログインしたとき | method |
purchase | ユーザーが購入手続きを完了したとき | transaction_idvalue currency tax shipping items coupon |
refund | ユーザーが払い戻しを受け取ったとき | transaction_id value currency tax shipping items |
search | ユーザーがコンテンツを検索したとき | search_term |
select_content | ユーザーがコンテンツを選択したとき | content_type item_id |
share | ユーザーがコンテンツを共有したとき | content_type item_id |
sign_up | ユーザーが登録したとき | |
spend_virtual_currency | ユーザーが仮想通貨(コイン、宝石、トークンなど)を使ったとき | item_name virtual_currency_name value |
tutorial_begin | ユーザーがチュートリアルを開始したとき | パラメータなし |
tutorial_complete | ユーザーがチュートリアルを完了したとき | パラメータなし |
推奨イベントの実装方法
FirebaseのEventsページに移動して実装したい推奨イベントをタップ
コードのスニペットが表示されるので任意の場所にコードを実装してください。
AnalyticsParameterContentID
はエラーが出たのでAnalyticsParameterContent
に変更しています。
select_contentイベントの例
var contentType: String? = "customcontentType"
var content: String? = "customContent"
var body: some View {
Button(action: {
Analytics.logEvent(AnalyticsEventSelectContent, parameters: [
AnalyticsParameterContent: content!,
AnalyticsParameterContentType: contentType!
])
}, label: {
Text("RecommendEvent")
})
}
Firebase Analytics(Eventタブ)で確認
推奨イベントを実装してすぐには既存のイベント欄に実装したイベントが表示されないため時間を置いて表示されるのを待ちましょう。
一日待って確認したらきちんと既存のイベントとして認識されていました!
コンテンツを確認
イベントタブを開いた状態で、select_content(推奨イベント)をクリックすると、select_contentイベントの詳細をみることができます。
Content_Typeが無事表示されています。
まとめ
今回は推奨イベントの実装方法について解説しました。Firebaseを用いたマーケティングは、これから収益化を目指す方やユーザーにとってよりよいアプリ開発を行うためにとても重要だと考えています。この記事が少しでもお役に立てれば幸いです。