Androidユーザー招待
概要
既存ユーザーが他のユーザーにアプリを紹介するための、ユーザー招待リンクを実装し、計測しましょう。
まずは、ユーザー招待の概要をご覧ください。
例を見てみましょう。レシピをご確認ください:
ユーザー招待の実装
はじめる前に:マーケティング担当者と連携し、マーケティング担当者側でリンクに必要な正確な導線・挙動を確認し、実装が必要なパラメータのリストを入手します。
ユーザー招待を実装するには、次の手順を完了してください:
- 招待リンクを生成するための招待リンク生成の設定をします。
- オプション 招待リンク生成のログを取得します。
- Unified Deep Linking (UDL) を実装します。
- オプション ユーザー招待リンクからリファラーデータを取得します。
- オプション 招待インセンティブをセットアップします。
次のコードは、マーケティング担当者の例に基づいています。
Set up invite link generation
To enable users to invite their friends to your app, you need a way to generate user invite links. This is done using LinkGenerator
.
To set up user invite link generation:
-
次の依存関係をインポートしてください:
import com.appsflyer.AppsFlyerLib; import com.appsflyer.CreateOneLinkHttpTask; import com.appsflyer.share.LinkGenerator; import com.appsflyer.share.ShareInviteHelper;
-
Set a OneLink template using
setAppInviteOneLink()
(The template ID is provided by the marketer):AppsFlyerLib.getInstance().setAppInviteOneLink("H5hv"); // set the OneLink template ID the user invite links will be based on
注意
- Make sure to call
setAppInviteOneLink()
before callingstart
. - OneLinkテンプレートは対象のアプリに紐づいている必要があります。
- Make sure to call
-
サイトの
LinkGenerator
usingShareInviteHelper.generateInviteUrl()
.LinkGenerator linkGenerator = ShareInviteHelper.generateInviteUrl(getApplicationContext());
-
Depending on the user flow you want to achieve, add the following parameters using
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
: リファラの識別子。リファラに報酬を与えるために使用することができます。- 注意: SDK V6.5.2以前のバージョン使用している場合は、パラメーター値を特殊文字でエンコードする必要があります。
-
アトリビューションパラメーターを設定します(これらは、AppsFlyerのダッシュボードやローデータレポートに表示されます)。
linkGenerator.setCampaign("summer_sale"); linkGenerator.setChannel("mobile_share");
-
オプション 生成されたリンクにブランドドメインを設定してください。
linkGenerator.setBrandDomain("brand.domain.com");
-
サイトの
LinkGenerator.ResponseListener
to retrieve the user invite link when it's available:LinkGenerator.ResponseListener listener = new LinkGenerator.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"); } };
注意
Since SDK v6.9.0
LinkGenerator.ResponseListener
replacedCreateOneLinkHttpTask.ResponseListener
onResponse()
は、ユーザー招待が正常に作成された際に呼び出されます。onResponseError()
は、リンク生成に失敗したときに呼び出されます。
- 有効
listener
tolinkGenerator.generateLink()
:linkGenerator.generateLink(getApplicationContext(), listener);
Set the shortlink ID
オプション
The shortlink ID can be determined by the developer, by adding the paramter af_custom_shortlink
to the LinkGenerator
instance.
linkGenerator.addParameter("af_custom_shortlink", <value>);
Log invite link creation events
オプション
To log the invite link creation event:
Log the invite using 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);
logInvite
results in an af_invite
in-app event.
注意
If you don't want to use a channel, you can use
logEvent
instead.
Set up UDL for user invite attribution
オプション
ユーザー招待のアトリビューションにUDLを設定する:
Unified Deep Linking (UDL) を実装します。In (=対象とする) DeepLinkListener.onDeepLinking()
, retrieve the deep linking parameters created during the link generation step. In this example, the following properties are retrieved:
deep_link_value
- 使用するファンクション:DeepLink.getDeepLinkValue()
deep_link_sub1
- 使用するファンクション:DeepLink.getStringValue()
deep_link_sub2
- 使用するファンクション:DeepLink.getStringValue()
参照コード: Java
招待したユーザーへ報酬を付与する
オプション
以下のシナリオでは、 ユーザーA が ユーザーB をアプリに招待しています。
Reward referrers on install
シナリオ: ユーザーBが、ユーザーAの招待リンクを経由して、アプリをインストールします。
User A's ID is available in DeepLinkListener.onDeepLinking()
and in this example, is retrieved using DeepLink.getStringValue("deep_link_sub2")
. Once you retrieve the ID, add it to the list of referrer IDs to be rewarded. It's up to you how to store and retrieve the list.
Reward referrers for user actions
シナリオ:ユーザーBが購入を行います。最初にユーザーBをアプリに紹介したユーザーAに、このアクションに対して報酬を与える必要があります。
ユーザーBの行動に対して、ユーザーAにインセンティブを付与する:
-
Retrieve User A's referrer ID and add it to one of the customizable in-app event parameters (for example,
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);
-
バックエンドでアプリ内イベントデータを取得してください。
-
見つかったリファラーIDを報酬を受ける対象のユーザーリストに追加してください。
-
ユーザーAがアプリを起動した際に、リファラIDが報酬を受けるユーザーリストにあるかどうかを確認し、該当する場合に報酬を与えてください。
注意
- ステップ2-3はモバイルデベロッパーが実行するステップではありません。ステップ4は、ステップ2-3の実装方法によって内容が異なります。
- 購入イベントは一例にすぎません。これは、あらゆる種類のアプリ内イベントに適用されます。
更新済 約1ヶ月前