ユーザー招待計測

ユーザー招待の実装

はじめる前に:マーケティング担当者と連携し、マーケティング担当者側でリンクに必要な正確な導線・挙動を確認し、実装が必要なパラメータのリストを入手します。

ユーザー招待を実装するには、次の手順を完了してください:

  1. 招待リンクを生成するための招待リンク生成の設定をします。
  2. オプション 招待リンク生成のログを取得します。
  3. Unified Deep Linking (UDL) を実装します。
  4. オプション ユーザー招待リンクからリファラーデータを取得します。
  5. オプション 招待インセンティブをセットアップします。

The following code is based on the marketer example.

Set up invite link generation

ユーザーが友人や知人をアプリに招待できるようにするには、ユーザー招待リンクを生成する方法が必要です。
これはLinkGeneratorを使用して行われます。
ユーザー招待リンクの生成を設定する:

  1. 次の依存関係をインポートしてください:

    import com.appsflyer.AppsFlyerLib;
    import com.appsflyer.CreateOneLinkHttpTask;
    import com.appsflyer.share.LinkGenerator;
    import com.appsflyer.share.ShareInviteHelper;
    
  2. setAppInviteOneLink() を使用してOneLinkテンプレートを設定してください(テンプレートIDはマーケティング担当から取得してください)

    AppsFlyerLib.getInstance().setAppInviteOneLink("H5hv"); // set the OneLink template ID the user invite links will be based on
    

    📘

    注意

    • startをコールするに、必ずsetAppInviteOneLink() をコールしてください。
    • OneLinkテンプレートは対象のアプリに紐づいている必要があります。
  3. ShareInviteHelper.generateInviteUrl() を使用して LinkGenerator を作成してください。

    LinkGenerator linkGenerator = ShareInviteHelper.generateInviteUrl(getApplicationContext());
    
  4. 実現したいユーザーフローに応じて、linkGenerator.addParameter() を使用して以下のパラメータを追加してください:

    linkGenerator.addParameter("deep_link_value", <TARGET_VIEW>);
    linkGenerator.addParameter("deep_link_sub1", <PROMO_CODE>);
    linkGenerator.addParameter("deep_link_sub2", <REFERRER_ID>);
    // Optional; makes the referrer ID available in the installs raw-data report
    linkGenerator.addParameter("af_sub1", <REFERRER_ID>);
    
    • deep_link_value:紹介されたユーザーをアプリ内の特定画面へディープリンクする
    • deep_link_sub1:招待されたユーザーが受け取ったプロモコード
    • deep_link_sub2: リファラの識別子。リファラに報酬を与えるために使用することができます。
  5. アトリビューションパラメーターを設定します(これらは、AppsFlyerのダッシュボードやローデータレポートに表示されます)。

    linkGenerator.setCampaign("summer_sale");
    linkGenerator.setChannel("mobile_share");
    
  6. CreateOneLinkHttpTask.ResponseListener を作成し、準備ができ次第ユーザー招待リンクを取得してください:

    CreateOneLinkHttpTask.ResponseListener listener = new CreateOneLinkHttpTask.ResponseListener() {
                @Override
                public void onResponse(String s) {
                    Log.d(LOG_TAG, "Share invite link: " + s);
                    // ...
                }
    
                @Override
                public void onResponseError(String s) {
                    Log.d(LOG_TAG, "onResponseError called");
                }
            };  
    }
    
  • onResponse() は、ユーザー招待が正常に作成された際に呼び出されます。
  • onResponseError() は、リンク生成に失敗したときに呼び出されます。
  1. listenerlinkGenerator.generateLink() に渡してください:
    linkGenerator.generateLink(getApplicationContext(), listener);
    

Log invite link creation events

オプション
招待リンク作成イベントを記録するには:
logInvite() を使用して招待をログ(記録)します。

HashMap<String,String> logInviteMap = new HashMap<String,String>();
logInviteMap.put("referrerId", <REFERRER_ID>);
logInviteMap.put("campaign", "summer_sale");

ShareInviteHelper.logInvite(getApplicationContext(), "mobile_share", logInviteMap);

logInviteaf_inviteのアプリ内イベントを発生させます。

📘

注意

チャネルを使用しない場合は、代わりにlogEventを使用することができます。

Set up UDL for user invite attribution

オプション
ユーザー招待のアトリビューションにUDLを設定する:
Unified Deep Linking (UDL) を実装します。
DeepLinkListener.onDeepLinking() 内で、リンク生成ステップで作成されたディープリンクパラメータを読み込みます。
この例では、以下のプロパティが取得されます。

  • deep_link_value - 使用するファンクション: DeepLink.getDeepLinkValue()
  • deep_link_sub1 - 使用するファンクション: DeepLink.getStringValue()
  • deep_link_sub2 - 使用するファンクション: DeepLink.getStringValue()

参照コード: Java

Reward referrers

オプション
以下のシナリオでは、 ユーザーAユーザーB をアプリに招待しています。

Reward referrers on install

シナリオ: ユーザーBが、ユーザーAの招待リンクを経由して、アプリをインストールします。

ユーザーAのIDは DeepLinkListener.onDeepLinking() で利用でき、この例では、DeepLink.getStringValue("deep_link_sub2") を使用して取得されています。IDを取得したら、報酬の対象となるリファラーIDのリストに追加してください。リストをどのように保存し、どのように取り出すかは開発者が決めてください。

Reward referrers for user actions

シナリオ:ユーザーBが購入を行います。最初にユーザーBをアプリに紹介したユーザーAに、このアクションに対して報酬を与える必要があります。

ユーザーBの行動に対して、ユーザーAにインセンティブを付与する:

  1. ユーザーAのリファラIDを取得し、カスタマイズ可能なアプリ内イベントパラメーター(例:af_param_1)に追加してください。

     Map<String, Object> purchaseEventParameters = new HashMap<String, Object>();
     purchaseEventParameters.put(AFInAppEventParameterName.PARAM_1, <REFERRER_ID>);
     purchaseEventParameters.put(AFInAppEventParameterName.CURRENCY, "USD");
     purchaseEventParameters.put(AFInAppEventParameterName.REVENUE, 200);
     
     AppsFlyerLib.getInstance().logEvent(getApplicationContext(), purchaseEventParameters);
    
  2. On your backend, retrieve in-app event data

  3. 見つかったリファラーIDを報酬を受ける対象のユーザーリストに追加してください。

  4. ユーザーAがアプリを起動した際に、リファラIDが報酬を受けるユーザーリストにあるかどうかを確認し、該当する場合に報酬を与えてください。

📘

注意

  • ステップ2-3はモバイルデベロッパーが実行するステップではありません。ステップ4は、ステップ2-3の実装方法によって内容が異なります。
  • 購入イベントは一例にすぎません。これは、あらゆる種類のアプリ内イベントに適用されます。

このページは役に立ちましたか?