adjust-icon

ディープリンク

ディープリンクを作成して、ユーザーをアプリ内の特定の場所に誘導します。Adjust SDKは、ユーザーがデバイスにアプリをインストール済みかどうかによって、異なるロジックを使用します。

  • ダイレクトディープリンクは、ユーザーがアプリをすでにデバイスにインストールしている場合に使用されます。そのリンクは、リンクで指定されたページにユーザーをリダイレクトします。
  • ディファードディープリンクは、ユーザーがアプリをデバイスにインストールしていない場合に使用されます。そのリンクは、ユーザーをアプリストアに送り、アプリを先にインストールしてもらいます。ユーザーがアプリをインストールすると、リンクで指定されたページが開きます。

SDKは、ユーザーがリンクからアプリを起動した後にディープリンクの情報を読み取ることができます。

ディープリンクの設定

ユーザーがアプリをインストールしている場合、ユーザーがディープリンクの情報を含むリンクをクリックするとアプリが起動します。Adjust SDKには、アプリ全体にディープリンクの情報を解析するツールが含まれます。

ディープリンクは、アプリレベルで設定する必要があります。使用するプラットフォームに合わせて、以下のリンク先のディープリンク設定手順に従ってください。

ユーザーをリアトリビュートするには、アプリがディープリンクコンテンツを受け取る時にappWillOpenUrlメソッドを呼び出す必要があります。Adjust SDKは次に、ディープリンク内の新しいアトリビューションデータを検索します。SDKが新しい情報を見つけた場合、その情報をAdjustのサーバーに転送し、リアトリビューションを行います。

メソッドシグネチャー
+ (void)appWillOpenUrl:(nonnull NSURL *)url;

iOSのディープリンクを有効化するには、アプリデリゲート内でtrue値を使用してappWillOpenUrlメソッドを呼び出します。

import Adjust
class AppDelegate {
func application(application:UIApplication!, didFinishLaunchingWithOptions launchOptions:NSDictionary!) -> Bool {
GeneratedPluginRegistrant.registerWithRegistry(self)
// Override point for customization after application launch.
return super.application(application, didFinishLaunchingWithOptions:launchOptions)
}
func application(application:UIApplication!, openURL url:NSURL!, sourceApplication:String!, annotation:AnyObject!) -> Bool {
Adjust.appWillOpenUrl(url)
return true
}
func application(application:UIApplication!, continueUserActivity userActivity:NSUserActivity!, restorationHandler:([AnyObject]!)->Void) -> Bool {
if (userActivity.activityType() == NSUserActivityTypeBrowsingWeb) {
Adjust.appWillOpenUrl(userActivity.webpageURL())
}
return true
}
}

ディファードディープリンク

プロパティ宣言
bool? launchDeferredDeeplink;

SDKはデフォルトでディファードディープリンクを開きます。追加設定はありません。ConfigインスタンスのlaunchDeferredDeeplinkプロパティを false に設定することで非有効化にすることができます。

AdjustConfig adjustConfig = new AdjustConfig('{YourAppToken}', AdjustEnvironment.Sandbox);
//...
adjustConfig.launchDeferredDeeplink = false;
//...
Adjust.start(adjustConfig);
プロパティ宣言
typedef void DeferredDeeplinkCallback(String? uri);
DeferredDeeplinkCallback? deferredDeeplinkCallback;

関数をconfigインスタンスのdeferredDeeplinkCallbackプロパティに追加することで、Adjust SDKがディファードディープリンクを受け取った際に、関数を呼び出すように設定することができます。この関数は、ディープリンクをString引数で受け取ります。

AdjustConfig adjustConfig = new AdjustConfig(yourAppToken, environment);
adjustConfig.deferredDeeplinkCallback = (String uri) {
print('[Adjust]: Received deferred deeplink: ' + uri);
};
Adjust.start(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.start(config);
}

LinkMeを有効にする

プロパティ宣言
bool? linkMeEnabled

Adjust SDKでは、デバイスのペーストボードからディープリンクの情報をコピーすることが可能です。AdjustのLinkMeソリューションを組み合わせることで、iOS 15以降のデバイスでディファードディープリンクを有効化することができます。

ユーザーがLinkMeのURLをクリックすると、そのリンク情報をシステムのペーストボードにコピーするオプションがあります。Adjust SDKを使用してシステムのペーストボードを読み、ディープリンクの情報を確認することができます。ディープリンクがある場合、SDKはユーザーをアプリ内の正しいページに転送します。

アプリ内でペーストボードの確認を有効化するには、ConfigオブジェクトのlinkMeEnabledプロパティをtrueに設定します。

AdjustConfig adjustConfig = new AdjustConfig('{YourAppToken}', AdjustEnvironment.Sandbox);
//...
adjustConfig.linkMeEnabled = true;
//...
Adjust.start(adjustConfig);