ディープリンクを作成して、ユーザーをアプリ内の特定の場所に誘導します。Adjust SDKは、ユーザーがデバイスにアプリをインストール済みかどうかによって、異なるロジックを使用します。
- ダイレクトディープリンクは、ユーザーがアプリをすでにデバイスにインストールしている場合に使用されます。そのリンクは、リンクで指定されたページにユーザーをリダイレクトします。
- ディファードディープリンクは、ユーザーがアプリをデバイスにインストールしていない場合に使用されます。そのリンクは、ユーザーをアプリストアに送り、アプリを先にインストールしてもらいます。ユーザーがアプリをインストールすると、リンクで指定されたページが開きます。
SDKは、ユーザーがリンクからアプリを起動した後にディープリンクの情報を読み取ることができます。
ユーザーがアプリをインストールしている場合、ユーザーがディープリンク情報を含むリンクをクリックするとアプリが起動します。Adjust SDKには、ディープリンク情報を解析してアプリ全体で利用するためのツールが備わっています。ディープリンクを設定するには、一意の スキーム名 を選択する必要があります。
ユーザーがディープリンクをクリックしたときに、特定のアクティビティを起動できます。これを行うには、以下の手順に従ってください。
AndroidManifest.xml
ファイルでアクティビティに スキーム名 を割り当てます。
- アクティビティ定義欄に
intent-filter
ノードを追加します。
intent-filter
ノード内に、 スキーマ名 を含むandroid:scheme
データノードを追加します。
例
この例は、MainActivity
というアクティビティを スキーム名 adjustExample
で開くように設定する方法を示します。
これでアプリでURIスキームを処理できるようになります。ユーザーが スキーム名 を含むdeep_link
パラメーターを持つリンクをクリックすると、アクティビティが起動します。
Android アプリリンクには、 AndroidManifest.xml
ファイルにintent
フィルターを追加して、アプリが処理できるURLを指定します。intent
フィルターに、 data
要素をandroid:autoVerify="true"
アトリビュートとともに含めます。
これで、アプリでAndroid アプリリンクを処理できるようになります。insights.go.link
ドメインを含むリンクをユーザーがクリックすると、アプリが自動的に開きます。
deep_link
パラメーターコンテンツの配信場所を指定できます。これを行うには、AndroidManifest.xml
ファイルでアクティビティにandroid:launchMode
プロパティを設定してください。
Adjust SDKは、onCreate
またはonNewIntent
メソッドを使ってアクティビティ内のintentオブジェクトにディープリンク情報を送信します。アプリが起動し、これらのメソッドのいずれかが起動すれば、ディープリンクコンテンツにアクセスできます。その後、アプリの他の部分でこの情報をアクセスできます。
onCreate
またはonNewIntent
メソッド内でgetData()
メソッドを呼び出すことで、ディープリンク情報を抽出できます。
ディファードディープリンク
Adjust SDKは、デフォルトでディファードディープリンクを開きます。追加の設定は必要ありません。この動作を無効化するには、AdjustConfig.setOnDeferredDeeplinkResponseListener
メソッドを使用して、ディファード ディープリンク コールバックを設定する必要があります。
ディファードディープリンクのコールバックを設定する
Adjust SDKがディファードディープリンクを受け取った際に、デリゲート関数を呼び出すように設定することができます。このデリゲート関数は、ディープリンクをString
引数で受け取ります。
ディープリンクを開く場合は、デリゲート関数でtrue
を返してください。ファイルを開かない場合は、 false
を返します。
例
この例では、コールバック関数で false
値を返すことで、SDKがアクティビティを起動しないようにする方法を示しています。
ディープリンクによるリアトリビューション
Adjustはディープリンクを使ったリエンゲージメントキャンペーンをサポートしています。詳細は、Campaign Labのディープリンクをご覧ください。
ユーザーをリアトリビュートするには、オープニングアクティビティのonCreate
メソッドとonNewIntent
メソッドでAdjust.processDeeplink
メソッドを呼び出す必要があります。Adjust SDKは次に、ディープリンク内の新しいアトリビューションデータを検索します。SDKが新しい情報を見つけた場合、その情報をAdjustのサーバーに転送し、リアトリビューションを行います。
最後に解析されたリンクを取得する
Adjust.getLastDeeplink()
メソッドを呼び出すことで、Adjust.processDeeplink()
もしくはAdjust.processAndResolveDeepLink()
メソッドでresolve(解析および変換)された最後のディープリンクURLを返すことができます。このメソッドは、最後に解析されたディープリンクをディープリンクオブジェクトとして返します。
リンクのresolution(解析と変換)
一部のEメールサービスプロバイダー(ESP)は、マーケティングキャンペーンに独自のカスタムドメインを使用しています。カスタムドメインでクリックを計測する場合は、SDKを設定してリンクを解析する必要があります。これを行うには、 AdjustLinkResolution
クラスのresolveLink
メソッドを呼び出します。Adjust SDKはカスタムリンクをたどって、ディープリンクを開いた時にそれを解析します。これにより、Eメール計測キャンペーンとのやり取りを記録することが可能です。
resolveLinkWithUrl
メソッドは以下の引数を受け取ります:
url
(String
):アプリを起動したディープリンク
resolveUrlSuffixArray
(String[]
):解析する必要がある設定済みキャンペーンのカスタムドメイン。
adjustLinkResolutionCallback
(AdjustLinkResolutionCallback
):最終URLを返すコールバック
このメソッドは、resolveUrlSuffixArray
内のドメインに対してディープリンクを確認します。一致するものが見つからない場合、ディープリンクURLをそのまま転送します。一致するものが見つかった場合、リンクの解析を試み、結果のディープリンクを返します。その後、これをコールバックパラメーターに保管します。
その後、返されたディープリンクを使用してユーザーをリアトリビュートできます。これを行うには、ディープリンクをAdjust.processDeeplink
メソッドにパスします。