ディープリンクを作成して、ユーザーをアプリ内の特定の場所に誘導します。Adjust SDKは、ユーザーがデバイスにアプリをインストール済みかどうかによって、異なるロジックを使用します。
- ダイレクトディープリンクは、ユーザーがアプリをすでにデバイスにインストールしている場合に使用されます。そのリンクは、リンクで指定されたページにユーザーをリダイレクトします。
- ディファードディープリンクは、ユーザーがアプリをデバイスにインストールしていない場合に使用されます。そのリンクは、ユーザーをアプリストアに送り、アプリを先にインストールしてもらいます。ユーザーがアプリをインストールすると、リンクで指定されたページが開きます。
SDKは、ユーザーがリンクからアプリを起動した後にディープリンクの情報を読み取ることができます。
スキーム名を設定する
ユーザーがアプリをインストールしている場合、ユーザーがディープリンク情報を含むリンクをクリックするとアプリが起動します。Adjust SDKには、ディープリンク情報を解析してアプリ全体で利用するためのツールが備わっています。ディープリンクを設定するには、一意の スキーム名 を選択する必要があります。
ユーザーがディープリンクをクリックしたときに、特定のアクティビティを起動できます。これを行うには、以下の手順に従ってください。
AndroidManifest.xmlファイルでアクティビティに スキーム名 を割り当てます。- アクティビティ定義欄に
intent-filterノードを追加します。 intent-filterノード内に、 スキーマ名 を含むandroid:schemeデータノードを追加します。
例
この例は、MainActivityというアクティビティを スキーム名 adjustExampleで開くように設定する方法を示します。
<activity android:name=".MainActivity" android:configChanges="orientation|keyboardHidden" android:label="@string/app_name" android:screenOrientation="portrait">
<intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter>
<intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="adjustExample" /> </intent-filter>
</activity>これでアプリでURIスキームを処理できるようになります。ユーザーが スキーム名 を含むdeep_linkパラメーターを持つリンクをクリックすると、アクティビティが起動します。
https://app.adjust.com/abc123?deep_link=adjustExample%3A%2F%2FAndroid アプリリンクを設定する
Android アプリリンクを使用してディープリンクを設定する場合でも、スキーム名の設定を必ず行ってください。
Android アプリリンクには、 AndroidManifest.xmlファイルにintentフィルターを追加して、アプリが処理できるURLを指定します。intentフィルターに、 data要素をandroid:autoVerify="true"アトリビュートとともに含めます。
<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="http" android:host="insights.go.link" /> <data android:scheme="https" android:host="insights.go.link" /> </intent-filter>これで、アプリでAndroid アプリリンクを処理できるようになります。insights.go.linkドメインを含むリンクをユーザーがクリックすると、アプリが自動的に開きます。
https://insights.go.link/login?adj_t=abc123ディープリンク情報にアクセスする
deep_linkパラメーターコンテンツの配信場所を指定できます。これを行うには、AndroidManifest.xmlファイルでアクティビティにandroid:launchModeプロパティを設定してください。
Adjust SDKは、onCreateまたはonNewIntentメソッドを使ってアクティビティ内のintentオブジェクトにディープリンク情報を送信します。アプリが起動し、これらのメソッドのいずれかが起動すれば、ディープリンクコンテンツにアクセスできます。その後、アプリの他の部分でこの情報をアクセスできます。
onCreateまたはonNewIntentメソッド内でgetData()メソッドを呼び出すことで、ディープリンク情報を抽出できます。
ディファードディープリンク
Adjust SDKは、デフォルトでディファードディープリンクを開きます。追加の設定は必要ありません。この動作を無効化するには、AdjustConfig.setOnDeferredDeeplinkResponseListenerメソッドを使用して、ディファード ディープリンク コールバックを設定する必要があります。
ディファードディープリンクのコールバックを設定する
public void setOnDeferredDeeplinkResponseListener(OnDeferredDeeplinkResponseListener onDeferredDeeplinkResponseListener)Adjust SDKがディファードディープリンクを受け取った際に、デリゲート関数を呼び出すように設定することができます。このデリゲート関数は、ディープリンクをString引数で受け取ります。
ディープリンクを開く場合は、デリゲート関数でtrueを返してください。ファイルを開かない場合は、 falseを返します。
例
この例では、コールバック関数で false値を返すことで、SDKがアクティビティを起動しないようにする方法を示しています。
ディープリンクによるリアトリビューション
public static void processDeeplink(AdjustDeeplink adjustDeeplink, Context context)Adjustはディープリンクを使ったリエンゲージメントキャンペーンをサポートしています。詳細は、Campaign Labのディープリンクをご覧ください。
ユーザーをリアトリビュートするには、オープニングアクティビティのonCreateメソッドとonNewIntentメソッドでAdjust.processDeeplinkメソッドを呼び出す必要があります。Adjust SDKは次に、ディープリンク内の新しいアトリビューションデータを検索します。SDKが新しい情報を見つけた場合、その情報をAdjustのサーバーに転送し、リアトリビューションを行います。
最後に渡されたディープリンクを取得する
public static void getLastDeeplink(final Context context, final OnLastDeeplinkReadListener onLastDeeplinkReadListener)Adjust.getLastDeeplink()メソッドを呼び出すことで、Adjust.processDeeplink()またはAdjust.processAndResolveDeepLink() メソッドに渡された最後のディープリンクのURLを取得できます。このメソッドは、最後に受け取ったディープリンクをURL形式で返します。
リンクのresolution(解析と変換)
public static void resolveLink(final String url, final String[] resolveUrlSuffixArray, final AdjustLinkResolutionCallback adjustLinkResolutionCallback)一部のEメールサービスプロバイダー(ESP)は、マーケティングキャンペーンに独自のカスタムドメインを使用しています。カスタムドメインでクリックを計測する場合は、SDKを設定してリンクを解析する必要があります。これを行うには、 AdjustLinkResolutionクラスのresolveLinkメソッドを呼び出します。Adjust SDKはカスタムリンクをたどって、ディープリンクを開いた時にそれを解析します。これにより、Eメール計測キャンペーンとのやり取りを記録することが可能です。
resolveLinkWithUrlメソッドは以下の引数を受け取ります:
url(String):アプリを起動したディープリンクresolveUrlSuffixArray(String[]):解析する必要がある設定済みキャンペーンのカスタムドメイン。adjustLinkResolutionCallback(AdjustLinkResolutionCallback):最終URLを返すコールバック
このメソッドは、resolveUrlSuffixArray内のドメインに対してディープリンクを確認します。一致するものが見つからない場合、ディープリンクURLをそのまま転送します。一致するものが見つかった場合、リンクの解析を試み、結果のディープリンクを返します。その後、これをコールバックパラメーターに保管します。
その後、返されたディープリンクを使用してユーザーをリアトリビュートできます。これを行うには、ディープリンクをAdjust.processDeeplinkメソッドにパスします。
リファラーを使用したディープリンクを処理する
オプションのリファラーURLは、ディープリンクやアプリのソースを計測して、より正確なアトリビューションやリアトリビューション、ディープリンクを実現するために使用されます。例えば、SEOやオーガニック検索、Adjustリンクなどのチャネルには直接使用されません。クライアントのルートドメインでAndroidアプリリンクが実装されており、それによってアプリが起動する場合、そのチャネルでは、ユーザーのアトリビューションまたはリアトリビューションを行うために、リファラーURLから得られるシグナルに依存する場合があります。