概要:概要: メール配信および分析プラットフォームであるOracle Responsysは、AppsFlyer OneLinkをメールに埋め込みます。リンクをクリックしたメール受信者は、アプリにディープリンクされます。
ESP (Email Service Providers) は、セグメント化されたユーザートラフィックを獲得するための有効な手段です。
ESPの課題の1つは、正しいアトリビューションとディープリンクを実行することです。ESPは、独自のESPクリック記録ドメインでディープリンクURLを加工します。この手順では、多くの場合、iOSユニバーサルリンクとAndroidアプリリンクの機能が損なわれます。
ただし、ディープリンクとクリック記録は、クリック記録ドメイン上でユニバーサルリンクとアプリリンクをサポートするESPで引き続き可能です。さらに、クリック記録ドメインとして機能する独自のクリックドメインを設定できます。
前提条件
- OneLinkとのディープリンクをサポートするようにアプリを設定します。
- SDK のバージョンを確認する (Android と iOS の両方)
- AppsFlyer iOS SDK バージョン 4.9.0 (以上)
- AppsFlyer アンドロイド SDK バージョン 4.9.0 (以上)
Oracle Responsysのクリックドメイン設定
この項に従って、Oracle Responsysでクリックドメイン(クリックレコーディングドメイン)を設定します。
ステップ1:ステップ1: Oracle Responsysでのクリックドメイン設定
クリックドメインを設定するには、 クリックドメインの作成方法に関するOracle Responsys公式ガイドに従ってください。Oracle Responsysでは、 リンク表を使用して、特定のキャンペーンのクリックを記録します
リンクテーブルでは、IOSリンクURLをリンクURLと同じに定義できることに注意してください。
リンク表にクリックドメインを設定すると、Responsysはこれらのドメインを使用して、Eメールキャンペーンに含めるOneLinksをラップします。このようにして、ResponsysはOneLinkとディープリンク機能を維持しながら、システムにクリックを記録できます。
ステップ2:ステップ2: ResponsysにAASA(iOS)およびAsset Linksファイル(Android)を付与します。
AASA (iOS)
ResponsysでiOSユニバーサルリンクをサポートするには、AASAファイルが必要です。次の手順をご参照ください。
ユニバーサルリンクでOneLinkを設定すると、OneLinkにAASAが関連付けられます。AASA を入手するには:
- OneLink設定に移動し、ユニバーサルリンクで構成されているOneLinkを見つけます。
- OneLink URLの末尾に/.well-known/apple-app-site-associationを追加します。
- OneLinkをブラウザのアドレスバーに貼り付けて、Enterを押します。例: <OneLinkSubdomain>.onelink.me/.well-known/apple-app-site-association.これを行うと、AASAファイルがコンピューターにダウンロードされます。シンプルテキストエディタを使用して開くことができます。
- このAASAファイルをResponsysに送信します。このファイルの詳細やその他の情報については、Oracleのガイドの11ページを参照してください。
Android 用アセットリンク
アプリリンクでOneLinkを設定すると、OneLinkに関連付けられたアセットリンクファイルがすでにある状態になります。アセットリンクファイルを取得するには:
- OneLink設定に移動し、アプリリンクで構成されているOneLinkを見つけます。
- OneLink URLの末尾に/.well-known/assetlinks.json を追加します。
- OneLinkをブラウザのアドレスバーに貼り付けて、Enterを押します。例: <OneLinkSubdomain>.onelink.me/.well-known/assetlinks.json.これを行うと、Asset Linksファイルがコンピューターにダウンロードされます。シンプルテキストエディタを使用して開くことができます。
- このアセットリンクファイルをResponsysに送信します。このファイルの詳細と内容の詳細については、こちらのガイドを参照してください。
アプリのセットアップ
Androidマニフェストのアクティビティにクリックドメインを追加します
Androidマニフェストで、ディープリンク先のアクティビティのアクティビティタグにクリックドメインホストとプレフィックスを追加します。
<activity android:name=".DeepLinkActivity">
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="https"
android:host="click.example.com"
android:pathPrefix="/campaign" />
</intent-filter>
</activity>
クリックドメインを解決するアプリの設定
SDKは、キャンペーン詳細を取得するために、クリックドメインの背後にあるOneLinkを解決する必要があります。
クリックドメインを解決するには:
- SDK のバージョンが 4.9.0 以上であることを確認してください。
- このAPIを、SDK初期化の前に呼び出す必要があります。詳細は、こちらのSDK実装手順をご覧ください。
AppsFlyerLib.getInstance().setResolveDeepLinkURLs("click.example.com");-
重要!Movable Ink (MI) をOracleと連携して使用している場合は、MI CNAMEと内部ドメインをMIアカウント担当者から入手し、Oracleのクリックリンクに加えて、setResolveDeepLinkURLs に追加する必要があります。例:
AppsFlyerLib.getInstance().setResolveDeepLinkURLs("oracle-click.example.com", "mi.example.com", "example.micpn.com");
-
重要!Movable Ink (MI) をOracleと連携して使用している場合は、MI CNAMEと内部ドメインをMIアカウント担当者から入手し、Oracleのクリックリンクに加えて、setResolveDeepLinkURLs に追加する必要があります。例:
このセクションでは、ユニバーサルリンクをサポートするアプリの設定方法について説明します。
Xcodeでのクリックドメインの関連付け
- Xcodeでプロジェクトをクリックします。
- Associated Domain(関連付ドメイン)をオンにします。
- [+] 記号をクリックし、クリックドメインを追加します。例:applinks:click.example.com.
ステップ2:クリックドメインを解決するアプリの設定
SDKは、キャンペーン詳細を取得するために、クリックドメインの背後にあるOneLinkを解決する必要があります。
クリックドメインを解決するには:
- SDK のバージョンが 4.9.0 以上であることを確認してください。
- このプロパティはSDK初期化前に設定する必要があります。詳細は、こちらのSDK実装手順をご覧ください。
[AppsFlyerTracker sharedTracker].resolveDeepLinkURLs = @[@"example.com",@"click.example.com"];AppsFlyerTracker.shared().resolveDeepLinkURLs = ["example.com", "click.example.com"]-
重要!Movable Ink (MI) をOracleと連携して使用している場合は、MI CNAMEと内部ドメインをMIアカウント担当者から入手し、Oracleのクリックリンクに加えて、setResolveDeepLinkURLs に追加する必要があります。ドメインの例:
- Oracleドメイン: oracle-click.example.com
- MI CNAMEドメイン: mi.example.com
- MI 内部ドメイン: example.micpn.com
-
重要!Movable Ink (MI) をOracleと連携して使用している場合は、MI CNAMEと内部ドメインをMIアカウント担当者から入手し、Oracleのクリックリンクに加えて、setResolveDeepLinkURLs に追加する必要があります。ドメインの例:
- 次のコードを追加して、SDK がクリック記録ドメインを解決できるようにします:
このコードを AppDelegate.m に追加します:
- (NSDictionary *)allHTTPHeaderFieldsForResolveDeepLinkURL:(NSURL *)URL { if ([URL.host isEqual: @"click.example.com"]) { return [NSDictionary dictionary]; } else { return nil; } }このコードをAppDelgate.swiftに追加します
func allHTTPHeaderFields(forResolveDeepLinkURL URL: URL!) -> [String : String]! { if (URL.host == "click.example.com") { /// Change User-Agent return [:] } else { return nil; } }
最初のEメールの送信
- リンク管理ページにて(または手動で)OneLink URLを作成してください。
- OneLink URLを作成する際は、必ずすべてのパラメータ値をURLエンコードしてください。
- 次のパラメータを使用することを強く推奨します:
- pid (メディアソース) - メディアソースを示す値を設定してください(例:Email)。
- c (キャンペーン) - 測定するキャンペーンの名前。
- af_dp - ユーザーをディープリンクで遷移させたいディープリンクURIスキーム。
- af_web_dp - デスクトップでクリックしたユーザーをリダイレクトしたい場所。
- af_ios_url - iOS デバイスのリンクをクリックしてアプリを持っていないユーザーをリダイレクトする場所。
- af_android_url - Android デバイスのリンクをクリックしてアプリを持っていないユーザーをリダイレクトする場所。
- Responsysで作成したメールにOneLink URLを配置します。例:
この段階で、Responsysは前のステップで設定したクリックドメインで上記リンクをラップします。クリックドメインをクリックすると、OneLink計測リンクにリダイレクトされます。アプリがユーザーのデバイスにインストールされている場合、クリックドメインはアプリにディープリンクします。<a href="greatapp.onelink.me/abcd/1234567">Download my great app!</a>
例
この例では、読みやすくするために、URLパラメータはURLエンコードされていません。
https://greatapp.onelink.me/abcd?pid=Email&c=Spring_Newsletter&is_retargeting=true&
af_dp=testapp://path/to/content&af_web_dp=https://www.example.com/path/to/content&
af_ios_url=https://www.example.com/path/to/content&af_android_url=https://www.example.com/path/to/content
リンクのテスト
上記の必要な手順をすべて実行し、適切なOneLink URLを作成し、メールに入れた後、テストメールを自分宛てに送信してください。
予想されること
アプリがインストールされている場合は、アプリを呼び出す必要があります。関連するAppsFlyer SDKのディープリンクAPIが実装されている場合は、関連するコンテンツにディープリンクする必要があります。
さらに、クリックは、提供されたメディアソースとキャンペーンに紐づくAppsFlyer管理画面と、Responsysデータの両方に表示されます。