ディープリンクのよくある質問
ディープリンクの動作は、テストまたは本番環境内のさまざまな要素の影響を受けます。この記事では、Adjustのディープリンク、ユニバーサルリンク、ディファードディープリンクに関する一般的な問題のトラブルシューティングについて説明します。問題が解決しない場合は、support@adjust.comまでお問い合わせください。
一般的なディープリンクの問題
ディープリンクで設定した遷移先が開かない、または「HTTP 404 URL not found」エラーが返される場合は、まずURLの構文とエンコードが正しいことを確認してください。
URLは通常、次の構文を使用します:scheme://host:port/path?query-string#fragment-id
URLの各部分には、それぞれ固有の機能があります。スキームとホストは大文字と小文字を区別しませんが、パスとクエリ文字列は大文字と小文字を区別します。URL構造に誤りがあると、リンクが意図した通りに開かない可能性があります。
ディープリンクを設定する場合:
- クエリパラメーターが既に含まれているURLクエリ文字列にAdjustのパラメーターを追加する場合は、「
&」を使用します。「?」は1個のみ使用してください。「?」を追加すると、2つ目以降の情報が破棄される可能性があります。 - クエリ文字列がエンコードされている場合は、クエリ文字列を「
/」で始めるか、クエリ文字列がdeeplinkパラメーターに含まれていることを確認してください。 - フォールバック、コールバック、デバイスIDパラメーター、またはキャンペーンパラメーターにスペースや無効な文字が含まれていないことを確認してください。エンコードの問題が原因で、パラメーターが不完全になる可能性があります。
正しい例:
https://example.go.link/my?path=location&client=name&adjust_t=klm012
誤った例:
https://example.go.link/my?path=location&client=name?adjust_t=klm012
アプリがインストールされておらず、URL構造にエラーがある場合、ブラウザーは adjust_tパラメーターを破棄する可能性があります。Adjustがクリックソースを識別するには、このパラメーターが必要です。パラメーターが存在しない場合、Adjustは 404 URL not foundを返します。
通常ディープリンクでアプリを開くのに失敗すると、フォールバックとしてユーザーがストアにリダイレクトされます。
トラブルシューティング:
- 既存のユーザーとしてリンクをテストします。
- テストでアプリが開く場合は、アプリが開かないリンクの環境に問題がないかを確認してください。
- アプリを開くために必要なリンクの標準であるユニバーサルリンク/Androidアプリリンク/カスタムのアプリスキームの設定が正しいかどうかを確認してください。
- フォールバックまたはコールバックのエンコードにエラーがないことを確認してください。エラーがあるとパラメーターが欠落し、リンク切れになる可能性があります。
リンクをクリックするとアプリ自体は開くが、正しい画面に遷移されない場合は、リンク設定またはアプリの設定に誤りがないかを確認してください。
Web環境でディープリンクをホストし、テストデバイスからリンクを開きます。ブランドドメインを使用している場合は、ブランドリンクを直接テストしてください。レガシーのAdjustadj.stリンクを使用している場合は、ユニバーサルリンクドメイン(https://abcd.adj.st/など)またはアプリスキーム([myapp://](myapp://.)など)をテストできます。
アプリは開くが誤ったパスに遷移される場合は、開発者にアプリ内パスが正しく設定されていることを確認してください。
注: adj.stユニバーサルリンクは、旧来のアプローチです。新規に実装する場合は、ブランドドメインを使用することをお勧めします。
アトリビューションとレポート機能
いいえ。Adjustリンクが使用されているか、Adjustのパラメーターが追加されたディープリンクからのクリックデータは受信しますが、アプリ固有のドメインまたはスキームのみを使用するダイレクトディープリンクの場合、クリックデータはAdjustに送信されません。
クリックデータを送信する:
myapp://welcome?adjust_t=abc123&adjust_campaign=re-engage_my_users&adjust_adgroup=apac&adjust_creative=promo1
https://z9pm.adj.st/welcome?adjust_t=abc123&adjust_campaign=re-engage_my_users&adjust_adgroup=apac&adjust_creative=promo1クリックデータを送信しない:
myapp://welcomeインストールされたアプリとディープリンクにおけるリアトリビューションのクリックデータを受け取るには、iOSまたはAndroid向けのAdjust SDKにSDKクリックを実装する必要があります。SDKクリックをトリガーするディープリンクは、Datascapeでクリックとしてレポートされ、クリックコールバックを通じてローデータとして表示されます。
ディープリンクのSDKクリックから発生したクリックを特定するには、{is_deeplink_click}プレースホルダーを含めてください。
ディープリンクURLからアトリビューションデータまたはキャンペーンレベルを取得できない場合、設定に問題がある可能性があります。デバイスIDパラメーターやキャンペーンパラメーター(該当する場合)が、エンコードのエラーによりフォールバックまたはコールバックから欠落していないことを確認してください。例えば、URLにスペースが含まれていないか、無効な文字が含まれていないかをチェックします。
ユニバーサルリンクの問題
インストールが正しくアトリビュートされているのに、パートナーがアトリビュートされたコールバックを受信していない場合は、ユニバーサルリンクの設定を確認してください。
以下が正しく設定されている必要があります。
クリックIDパラメーターがユニバーサルリンクに追加されている。 フォールバックまたはコールバックにエンコードエラーは発生していない。 クリックIDパラメーターにadj_またはadjust_のプレフィックスが追加されている。
クリックIDが存在していないか正しくフォーマットされていない場合、またはエンコードの問題で欠落している場合は、インストールのアトリビュートができても、Adjustはパートナーコールバックデータを渡すことができません。
まず、ユニバーサルリンクが正しく設定されていることを確認します。
次に、Appleが開こうとしているリンクの場所を確認します。Appleは、Safariの外部にあるユニバーサルリンクへのリダイレクトを許可していないため、Web環境でRawユニバーサルリンクまたはスキームをホストし、そこからクリックする必要があります。
それでもアプリが開かない場合は、以下の手順に従ってください。
- Safariでテスト用HTMLページを開き、共有アイコンを選択します。アプリのリストに「...で開く」オプションが表示されている場合、Associated Domainsの設定は正しく、Apple App Site Associationのファイルがダウンロードされています。
- リストにアプリが表示されない場合は、アプリをアンインストールしてから再度インストールしてください。
- バンドルIDがテストと本番環境で同じであることを確認します。
- AppViewでiOSのバンドルIDとApp Prefixが正しいことを確認します。
- それでもアプリが開かない場合は、ユニバーサルリンクまたはスキームとアプリの関連付けに関する調査を社内の開発者に依頼してください。
また、リンクに「target="_blank"」が含まれていないことを確認してください。これはテスト環境では機能するものの本番環境では機能しないため、存在する場合はリンクからこのアトリビューションを削除します。
ユニバーサルリンクにパスが含まれていることを確認してください。パスが追加されていない場合、アプリがインストールされていてもユーザーがストアに遷移される可能性があります。指定するパスは有効である必要はありません。
ほとんどの場合、iOSでは、Safari以外からのユニバーサルリンクへのリダイレクトは許可されていません。つまり、SFSafariViewControllerを使用する環境では、この影響を受ける可能性があります。
メールリンクは、ユニバーサルリンクをサポートしていないブラウザーやメールアプリを含む多くの環境で開かれる可能性があるため、AdjustはJSRリンクを使用するか、Adjust ESPを実装することを推奨しています。
ディープリンクパラメーターを持つディープリンク
Facebookの投稿を通じて実施されるキャンペーンでは、deeplinkパラメーターが追加されたAdjustリンクURLを使用し、ディープリンクパラメーターにパスを含める必要があります。パスがない場合、アプリがインストールされていても、ユーザーがストアに遷移される可能性があります。指定するパスは有効である必要はありません。
例: https://app.adjust.com/abc123?deeplink=adjust%3A%2F%2Fsuch_path
ディファードディープリンク
ディファードディープリンクは、ユーザーがアプリをインストールする前にディープリンクをクリックした場合に使用され、インストール後にアプリ内の意図した場所を開きます。
ディファードディープリンクで正しい場所が開かない場合は、以下を確認してください。
- アプリ内でパスの遷移先が存在していることを確認します。
myapp://などのアプリスキームをWeb環境でホストし、そこからクリックします。- 既存のユーザーとしてパスをクリックしても機能しない場合は、開発者に依頼して、アプリのパスが正しく設定されていることを確認します。
- パスが既存のユーザーには機能するが、新規ユーザーに機能しない場合、テストコンソールでデバイスを検査し、デバイスがクリックにアトリビュートされているかどうかを確認します。
- デバイスがアトリビュートされていない場合、テストコンソールのデバイス情報を削除し、再度テストしてください。
- デバイスがアトリビュートされている場合、デバイスに
deeplinkパラメーターが含まれていることを確認します。 deeplinkパラメーターが存在しない場合、エンコードの問題または特殊文字によってURLを途切れていないことを確認してください。deeplinkパラメーターは存在するがパスが見つからない場合は、Adjustのサポートまでご連絡ください。
テストの際、テストコンソールでデバイス情報を削除した後でも、短時間ではありますが、クリック後にディファードディープリンクが維持される場合があります。
この問題は、以下の手順で再現する可能性があります。
- ディープリンクをクリックし、アプリをインストールして起動します。
- アプリをアンインストールします。
- テストコンソールからデバイス情報を削除します。
- 別のテストを実行すると、ディファードディープリンクが機能しません。
これを解決するには、アプリをもう一度アンインストールし、テストコンソールからデバイス情報をもう一度削除して、再度テストを実施してください。