ディープリンクを作成して、ユーザーをアプリ内の特定の場所に誘導します。Adjust SDKは、ユーザーがデバイスにアプリをインストール済みかどうかによって、異なるロジックを使用します。
- ダイレクトディープリンクは、ユーザーがアプリをすでにデバイスにインストールしている場合に使用されます。そのリンクは、リンクで指定されたページにユーザーをリダイレクトします。
- ディファードディープリンクは、ユーザーがアプリをデバイスにインストールしていない場合に使用されます。そのリンクは、ユーザーをアプリストアに送り、アプリを先にインストールしてもらいます。ユーザーがアプリをインストールすると、リンクで指定されたページが開きます。
SDKは、ユーザーがリンクからアプリを起動した後にディープリンクの情報を読み取ることができます。
ディープリンクを設定する
ユーザーがアプリをインストールしている場合、ユーザーがディープリンク情報を含むリンクをクリックするとアプリが起動します。Adjust SDKには、ディープリンク情報を解析してアプリ全体で利用するためのツールが備わっています。
ディープリンクは、アプリレベルで設定する必要があります。使用するプラットフォームに合わせて、以下のリンク先のディープリンク設定手順に従ってください。
ディープリンクを使用したリアトリビューション
ユーザーをリアトリビュートするには、ディープリンクURLでADJDeeplink
/ AdjustDeeplink
オブジェクトをインスタンス化し、 Adjust.processDeeplink
メソッドにパスする必要があります。 Adjust SDKは次に、ディープリンク内の新しいアトリビューションデータを検索します。SDKが新しい情報を見つけた場合、その情報をAdjustのサーバーに転送し、リアトリビューションを行います。
iOS
+ (void)processDeeplink:(ADJDeeplink *)deeplink
ディープリンクによるAdjustのリアトリビューションを有効にするには、アプリデリゲートコールバックの1つでディープリンクを取得したら、必ずAdjust.processDeeplink
メソッドを呼び出してください。
Android
public static void processDeeplink(AdjustDeeplink deeplink)
ディープリンクによるAdjustのリアトリビューションを有効にするには、アクティビティでディープリンクを取得したら、必ずAdjust.processDeeplink
メソッドを呼び出してください。
ディファードディープリンク
bool? isDeferredDeeplinkOpeningEnabled;
SDKはデフォルトでディファードディープリンクを開きます。追加設定はありません。ConfigインスタンスのisDeferredDeeplinkOpeningEnabled
プロパティを false に設定することで非有効化にすることができます。
AdjustConfig adjustConfig = new AdjustConfig('{YourAppToken}', AdjustEnvironment.sandbox);adjustConfig.isDeferredDeeplinkOpeningEnabled = false;
Adjust.initSdk(adjustConfig);
ディファードディープリンクのコールバックを設定する
typedef void DeferredDeeplinkCallback(String? deeplink);DeferredDeeplinkCallback? deferredDeeplinkCallback;
関数をconfigインスタンスのdeferredDeeplinkCallback
プロパティに追加することで、Adjust SDKがディファードディープリンクを受け取った際に、関数を呼び出すように設定することができます。この関数は、ディープリンクをString
引数で受け取ります。
AdjustConfig adjustConfig = new AdjustConfig('{YourAppToken}', AdjustEnvironment.sandbox);adjustConfig.deferredDeeplinkCallback = (String? deeplink) { print('[Adjust]: Received deferred deeplink: ' + deeplink);};
Adjust.initSdk(adjustConfig);
例
この例では、ユーザーがディファードディープリンクを開いたときに、ディープリンクのアドレスをログに記録する方法を示しています。
import 'package:adjust_sdk/adjust.dart';import 'package:adjust_sdk/adjust_config.dart';
initPlatformState() async { AdjustConfig config = new AdjustConfig('2fm9gkqubvpc', AdjustEnvironment.sandbox); config.logLevel = AdjustLogLevel.verbose;
config.deferredDeeplinkCallback = (String? uri) { print('[Adjust]: Received deferred deeplink: ' + uri!); };
Adjust.initSdk(config);}
LinkMeを有効化する
bool? isLinkMeEnabled;
Adjust SDKでは、デバイスのペーストボードからディープリンクの情報をコピーすることが可能です。AdjustのLinkMeソリューションを組み合わせることで、iOS 15以降のデバイスでディファードディープリンクを有効化することができます。
ユーザーがLinkMeのURLをクリックすると、そのリンク情報をシステムのペーストボードにコピーするオプションがあります。Adjust SDKを使用してシステムのペーストボードを読み、ディープリンクの情報を確認することができます。ディープリンクがある場合、SDKはユーザーをアプリ内の正しいページに転送します。
アプリ内でペーストボードの確認を有効化するには、ConfigオブジェクトのisLinkMeEnabled
プロパティをtrue
に設定します。
AdjustConfig adjustConfig = new AdjustConfig('{YourAppToken}', AdjustEnvironment.sandbox);adjustConfig.isLinkMeEnabled = true;
Adjust.initSdk(adjustConfig);
リファラーを使用したディープリンクを処理する
オプションのリファラーURLは、ディープリンクやアプリのソースを計測して、より正確なアトリビューションやリアトリビューション、ディープリンクを実現するために使用されます。例えば、SEOやオーガニック検索、Adjustリンクなどのチャネルには直接使用されません。クライアントのルートドメインでAndroidアプリリンクが実装されており、それによってアプリが起動する場合、そのチャネルでは、ユーザーのアトリビューションまたはリアトリビューションを行うために、リファラーURLから得られるシグナルに依存する場合があります。
この情報をアプリ内で取得できる場合は(iOSおよびAndroidでの取得方法を参照)、以下のようにSDKにリファラー情報を渡すことができます。
AdjustDeeplink adjustDeeplink = new AdjustDeeplink("DeepLinkThatLaunchedAnApp");adjustDeeplink!.referrer = "Referrer";
Adjust.processDeeplink(adjustDeeplink);