iOS ユーザー招待
概要
既存ユーザーが他のユーザーにアプリを紹介するための、ユーザー招待リンクを実装し、計測しましょう。
まずは、ユーザー招待の概要をご覧ください。
例を見てみましょう。レシピをご確認ください:
ユーザー招待計測の実装
はじめる前に:マーケティング担当者と連携し、マーケティング担当者側でリンクに必要な正確な導線・挙動を確認し、実装が必要なパラメータのリストを入手します。
ユーザー招待を実装するには、次の手順を完了してください:
- 招待リンクを生成するための招待リンク生成の設定をします。
- オプション 招待リンク生成のログを取得します。
- Unified Deeplinking (UDL) の実装
- オプション ユーザー招待リンクからリファラーデータを取得します。
- オプション 招待インセンティブをセットアップします。
次のコードは、マーケティング担当者の例に基づいています。
Set up invite link generation
To enable users to invite their friends to your app, you need a way to generate invitation links. This is done using AppsFlyerLinkGenerator
.
To set up invite link generation:
-
Make sure you import
AppsFlyerLib
:import com.appsflyer.AppsFlyerLib;
-
In
AppDelegate
, set a OneLink template usingappInviteOneLinkID
(The template ID is provided by the marketer):AppsFlyerLib.shared().appInviteOneLinkID = "H5hv" // Set the OneLink template ID for userinvitation links
注意
- Make sure to set
appInviteOneLinkID
before callingstart
- OneLinkテンプレートは対象のアプリに紐づいている必要があります。
- Make sure to set
-
Call
AppsFlyerShareInviteHelper.generateInviteUrl
and pass it anAppsFlyerLinkGenerator
and acompletionHandler
:AppsFlyerShareInviteHelper.generateInviteUrl( linkGenerator: { (_ generator: AppsFlyerLinkGenerator) -> AppsFlyerLinkGenerator in generator.addParameterValue(<TARGET_VIEW>, forKey: "deep_link_value") generator.addParameterValue(<PROMO_CODE>, forKey: "deep_link_sub1") generator.addParameterValue(<REFERRER_ID>, forKey: "deep_link_sub2") // Optional; makes the referrer ID available in the installs raw-data report generator.addParameterValue(<REFERRER_ID>, forKey: "af_sub1") generator.setCampaign("summer_sale") generator.setChannel("mobile_share") // Optional; Set a branded domain name: generator.brandDomain = "brand.domain.com" return generator }, completionHandler: { (_ url: URL?) -> Void in if url != nil { NSLog("[AFSDK] AppsFlyer share-invite link: \(url!.absoluteString)") } else { print("url is nil") } } )
Depending on the user flow you and the marketer want to achieve, configure
generator
as follows:- セッターを使用して計測パラメーターを設定してください。
- Set deep linking parameters, using
AppsFlyerLinkGenerator.addParameterValue
:deep_link_value
:紹介されたユーザーをアプリ内の特定画面へディープリンクするdeep_link_sub1
:カスタマイズできるパラメーター。この例では、招待されたユーザーが受信したプロモコードを渡すために使用されています。deep_link_sub2
: リファラの識別子。リファラに報酬を与えるために使用することができます。
-
In the
completionHandler
, check if the URL was created successfully (url
notnil
), and retrieve the generated user invite link. -
ユーザーが生成されたリンクを共有できるようにします。例えば、クリップボードにコピーします。
Set the shortlink ID
オプション
The shortlink ID can be determined by the developer, by adding the paramter af_custom_shortlink
to the LinkGenerator
instance.
generator.addParameterValue(<value>, forKey:"af_custom_shortlink")
Log invite link creation events
オプション
To log the invite link creation event:
Send an event indicating that a user has generated an invite link using logInvite
:
AppsFlyerShareInviteHelper.logInvite(<CHANNEL>, parameters: [
"campaign" : "summer_sale",
"referrerId" : <REFERRER_ID>,
]);
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
DeepLinkDelegate.didResolveDeepLink
, retrieve the deep linking parameters created during the link generation step. In this example, the following properties are retrieved:deep_link_value
- 使用するファンクション:DeepLink.deeplinkValue
deep_link_sub1
- 使用するファンクション:DeepLink.clickEvent["deep_link_sub1"]
deep_link_sub2
- 使用するファンクション:DeepLink.clickEvent["deep_link_sub2"]
参照コード:Swift
-
リファラーIDを取得したら、そのリファラーIDがどのように保存され、使用されるかはユーザー次第です。
招待したユーザーへ報酬を付与する
オプション
以下のシナリオでは、 ユーザーA が ユーザーB をアプリに招待しています。
Reward referrers on install
Scenario: User B installs your app via User A's invite link.
User A's referrer ID is available in the UDL didResolveDeepLink
(in this example, under DeepLink.clickEvent["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 on in-app events
シナリオ:ユーザーBが購入を行います。最初にユーザーBをアプリに紹介したユーザーAに、このアクションに対して報酬を与える必要があります。
ユーザーBの行動に対して、ユーザーAにインセンティブを付与する:
- Retrieve user A's referrer ID and add it to one of the customizble in-app event parameters (for example,
af_param_1
):AppsFlyerLib.shared().logEvent(AFEventPurchase, withValues: [ AFEventParamRevenue: 200, AFEventParamCurrency:"USD", AFEventParam1: <REFERRER_ID> ]);
- バックエンドで、アプリ内イベントデータを取得してください。
- 見つかったリファラーIDを報酬を受ける対象のユーザーリストに追加してください。
- ユーザーAがアプリを起動した際に、リファラIDが報酬を受けるユーザーリストにあるかどうかを確認し、該当する場合に報酬を与えてください。
注意
- ステップ2-3はモバイルデベロッパーが実行するステップではありません。ステップ4は、ステップ2-3の実装方法によって内容が異なります。
- 購入イベントは一例にすぎません。これは、あらゆる種類のアプリ内イベントに適用されます。
更新済 21日