エンターテイメントアプリ向けの推奨イベント

概要:エンターテイメントアプリで推奨されるアプリ内イベントを記録して、ユーザージャーニー全体のユーザーの質を測定しましょう。

InApp_Events_streaming.png エンターテイメント

オンデマンドコンテンツに対するユーザーの要求が高まるにつれて、エンターテイメントアプリ市場は非常に競争が激しくなっています。記録が推奨される一般的なイベントには、ユーザーサブスクリプション、コンテンツのストリーミング、コンテンツのダウンロードと保存などがあります。

これらのイベントを計測することで、次のような判断に役立ちます。

  • どんなコンテンツをユーザーが視聴するか
  • ユーザーが好むコンテンツに応じたキャンペーンのパフォーマンス
  • ユーザーエンゲージメントと使用状況

これらのイベントは、次のスマートテレビで動作するエンターテイメントアプリにも関係します。

  • Android Smart TV
  • Apple TV (tvOS)
  • Amazon Fire TV

アプリ内イベント計測の詳細については、リッチアプリ内イベントガイドを参照してください。

Flowchart_for_recommended_events entertainment_app_user_journey

規定イベントで推奨される構造

次のセクションでは、エンターテイメントアプリの一般的なイベント構造の一覧を示しています。各構造には、既定のイベント名と推奨されるイベントパラメーターが含まれています。アプリ内イベントには、ビジネスニーズを満たす任意のイベントパラメーターを含めることができます。

登録完了 (af_complete_registration)

目的

アプリをインストールし、サインアップを完了したユーザーがどれだけいるか、またユーザーが好むサインアップ方法を確認しましょう

トリガー

ユーザーがサインアップ手順を完了したとき

イベントパラメータ

名称 説明 値の例:
af_registration_method ユーザーが選択したサインアップ方法 Facebook、Google、メール

コードの例

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.REGSITRATION_METHOD, "Facebook"); 
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.COMPLETE_REGISTRATION, eventValue);

ログイン (af_login)

目的

登録ユーザーのリテンションを理解しましょう

トリガー

ユーザーが正常にログインしたとき

イベントパラメータ

パラメーターなしで送信できます

コードの例

Android iOS - Objective C iOS - Swift Unity
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.LOGIN, null);

トライアル開始 (af_start_trial)

目的

多くのストリーミングサービスでは、ユーザーにプレミアム機能を体験するための試用期間を提供します。このイベントを計測すると、次のことに役立つでしょう。

  • 何人のユーザーが試用期間中にオプトインするかを把握できます。
  • トライアルがプロモーションやパートナーとのコラボレーションの一部であるか
  • どのプロモーションがトライアル開始のきっかけとなったか

トリガー 

ユーザーがトライアル期間にオプトインしトライアルを開始した時期

イベントパラメータ

名称 説明 値の例:
trial_method トライアルを開始する 新しい携帯電話で無料、通信料と組み合わせて無料、プロモーション、クーポンコード
trial_method_identifier

トライアル方法のID

キャリア名(例: Vodafone

パートナー名(例: Facebook

クーポンコード(例: TRA123

コードの例

Android iOS - Objective C iOS - Swift Unity

Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put("trial_method", "coupon code");
eventValue.put("trial_method_identifier", "TRA123");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.START_TRIAL, eventValue);

サブスクリプション (af_subscribe)

目的

サブスクリプションはストリーミングサービスの中核です。このイベントを計測すると、次のことに役立つでしょう。

  • どのキャンペーンがユーザーのサブスクリプションに結び付いたかを確認できます。
  • トライアル中のユーザー数をサブクスライブ中のユーザー数と比較しましょう
  • サブスクリプションから発生する収益額を決定し、それをキャンペーンやメディアソースに関連付けます

トリガー 

  • ユーザーが正常にサブスクリプションを完了したとき
  • サブスクリプションが更新された日時

詳細については、サブスクリプションの計測ガイドを参照してください。

イベントパラメータ

名称 説明 値の例:
new_subscription サブスクリプションが新規購入または更新されたとき true / false
af_coupon_code クーポンコード(サブスクリプション中に使用された場合) 3MonthsSubscription
coupon_code_value 初期価格からのクーポン割引率 10%
af_revenue サブスクリプションに紐づく収益 5
af_currency サブスクリプションの支払い通貨 USD
subscription_method サブスクリプションに使用された支払い方法 クレジットカード、E-Wallet、PayPal
expiration_date サブスクリプションの有効期限 2018/07/18

コードの例

Android iOS - Objective C iOS - Swift Unity

Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put("new_subscription", true);
eventValue.put(AFInAppEventParameterName.COUPON_CODE, "3MonthsSubscription");
eventValue.put("coupon_code_value", "10%");
eventValue.put(AFInAppEventParameterName.REVENUE, 5);
eventValue.put(AFInAppEventParameterName.CURRENCY, "USD");
eventValue.put("subscription_method", "");
eventValue.put("expiration_date", "2018/07/18");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.SUBSCRIBE, eventValue);

カスタムイベントで推奨される構造

次のセクションでは、カスタムビエント名と推奨されるイベントパラメーターのイベント構造リストを示しています。アプリ内イベントには、ビジネスニーズを満たすどんなイベントパラメーターを含めることができます。

メディア再生 (media_play)

目的

提供するメディアをユーザーが再生するイベントを記録しましょう。メディアには、例えば動画、音楽、テレビ番組、ラジオなどが含まれます。

このイベントを記録すると、次のことを判断できます。

  • タイプおよびコンテンツ別のメディア視聴
  • 最も人気のあるストリーミングコンテンツの言語
  • ストリーミングコンテンツの最小、最大、および平均持続時間

トリガー

ストリームコンテンツ再生後に一定時間(2分など)が経過したあと

イベントパラメータ

名称 説明 値の例:
af_content_type ストリーミングされるコンテンツのタイプ テレビ番組、音楽
af_content_id ストリーミングされるコンテンツのID 092, E34
af_content コンテンツのタイトル、つまり曲名またはテレビ番組のタイトルとエピソード コンテンツのタイトル
media_duration 再生時間 5
language コンテンツの言語 en-us, fr, es

コードの例

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.CONTENT_TYPE, "tv show");
eventValue.put(AFInAppEventParameterName.CONTENT_ID, "E34");
eventValue.put(AFInAppEventParameterName.CONTENT, "My Show");
eventValue.put("media_duration", 5);
eventValue.put("language", "en-us");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), "media_play", eventValue);

メディア再生時間 (media_minutes)

目的

視聴時間は、特定のコンテンツをユーザーがどれくらい視聴したかを表します。これによりユーザーの使用状況を推測することができるため、ストリーミング業界では、収益の指標に次いで最も重要な指標です。また、サービスの全体的な使用率がどの程度か、最も人気のあるコンテンツが何かを理解することもできます。このイベントを計測すると、次のことに役立ちます。

  • どのユーザーがサービスを幅広く利用しているのかを確認できます
  • 人気のあるメディアの種類とコンテンツタイプは何かを把握できます

トリガー

次のいずれかの場合:

  • ユーザーがメディアアイテムのストリーミングを終了したとき
  • ユーザーがメディアアイテムのストリーミングを中止したとき

イベントパラメータ

名称 説明 値の例
minutes_consumed ユーザーによる実際のメディア視聴時間 3
af_content_type ストリーミングされるコンテンツのタイプ テレビ番組、音楽
af_content_id ストリーミングされるコンテンツのID 092, E34
af_content コンテンツのタイトル、例えば曲名またはテレビ番組のタイトルとエピソードなど コンテンツのタイトル
media_duration 再生時間 5
language コンテンツの言語 en-us, fr, es

コードの例

Android iOS - Objective C iOS - Swift Unity

Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.CONTENT_TYPE, "tv show");
eventValue.put(AFInAppEventParameterName.CONTENT_ID, "E34");
eventValue.put(AFInAppEventParameterName.CONTENT, "My Show");
eventValue.put("media_duration", 5);
eventValue.put("language", "en-us");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(),"media_minutes", eventValue);

メディアのダウンロード (media_downloaded)

目的

メディア再生とメディアのダウンロードを記録し、この2つを比較することでユーザー設定の好みを知ることができます。ストリーミングが好まれるメディアと、ダウンロードが好まれるメディアを知ることができます。

トリガー 

ユーザーがメディアのダウンロードを開始した時

イベントパラメータ

名称 説明 値の例:
af_content_type コンテンツタイプ テレビ番組、音楽
af_content_id コンテンツID 092, E34
af_content コンテンツのタイトル(曲の名前、テレビ番組のタイトルやエピソードなど) コンテンツのタイトル
media_duration 再生時間 5
language コンテンツの言語 en-us, fr, es

コードの例

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.CONTENT_TYPE, "tv show");
eventValue.put(AFInAppEventParameterName.CONTENT_ID, "E34");
eventValue.put(AFInAppEventParameterName.CONTENT, "My Show");
eventValue.put("media_duration", 5);
eventValue.put("language", "en-us");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), "media_downloaded", eventValue);

メディアの保存 (media_saved)

目的

ユーザーの好みを知ることができます

トリガー

ユーザーのデバイスにメディアが保存されたとき

イベントパラメータ

名称 説明 値の例:
af_content_type コンテンツタイプ テレビ番組、音楽
af_content_id コンテンツID 092, E34
af_content コンテンツのタイトル、例えば曲名またはテレビ番組のタイトルとエピソードなど コンテンツのタイトル
media_duration 再生時間 5
language コンテンツの言語 en-us, fr, es

コードの例

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.CONTENT_TYPE, "tv show");
eventValue.put(AFInAppEventParameterName.CONTENT_ID, "E34");
eventValue.put(AFInAppEventParameterName.CONTENT, "My Show");
eventValue.put("media_duration", 5);
eventValue.put("language", "en-us");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), "media_saved", eventValue);