深度链接
Adjust SDK 允许您使用深度链接将用户定向至应用中的特定页面。您也可以收集关于深度链接及其内容信息,以备之后使用。
深度链接分两类:
- 直接深度链接: 如果用户的设备上已经安装了应用,就会发生直接深度链接。在这种情况下,深度链接会将用户转到链接中指定的页面。
- 延迟深度链接 :如果用户设备上尚未安装应用,那么就会发生延迟深度链接。在这种情况下,深度链接会先将用户转到设备应用商店,进行应用下载和安装。用户安装并打开应用后,SDK 就会将用户重定向至链接中指定的页面。
用户通过跟踪链接打开应用后,您就能使用 SDK 访问深度链接 URL。
直接深度链接
如果用户设备上已经安装了您的应用,在用户与包含深度链接的跟踪链接互动时,应用就会打开。然后,您就能解析深度链接信息,以备之后使用。为此,您需要选择唯一的 scheme 名称。
您可以进行设置,在用户与深度链接互动时启动特定活动。为此,请进行下列操作:
- 在您的
AndroidManifest.xml
文件中为活动指定唯一的 scheme 名称。 - 将
intent-filter
部分添加到活动定义中。 - 使用您选择的 scheme 名称指定
android:scheme
属性值。
例如,您可以设置名为 MainActivity
的活动按如下方式打开
<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>
要在用户点击跟踪链接时打开您的应用,请将其 scheme 名称作为 deep_link
参数添加至 Adjust 跟踪链接。不含任何额外信息的跟踪链接形式如下: https://app.adjust.com/abc123?deep_link=adjustExample%3A%2F%2F
遵照上述示例,用户在与跟踪链接互动时,您的应用就会打开。应用打开后会启动 MainActivity
活动。您将在 MainActivity
类中收到有关 deep_link
参数内容的信息。SDK 会解码参数内容。
您可以设置 deep_link
参数内容的发送位置。为此请设置活动的 android:launchMode
属性。您可以在 AndroidManifest.xml
文件中找到该信息。请查看 安卓官方文档 ,了解更多关于 android:launchMode
属性的信息。
SDK 会在活动的 Intent
对象中传递深度链接信息。为此应用会使用活动的 onCreate
或 onNewIntent
方法。启动应用并触发这些方法之一后,就可以访问深度链接内容了。您可以在应用的其他位置使用这些信息。
您可以按以下两种方式提取深度链接内容:
延迟深度链接
Adjust SDK 默认自动打开延迟深度链接。无需额外设置。如果您想禁用或改变该行为,则需要设置一个延迟深度链接回传。
延迟深度链接回传
您可以配置 Adjust SDK,使其在接收到延迟深度链接时调用一个委托函数。委托函数会以 字符串 参数的形式接收深度链接。
如果想打开深度链接,请在委托函数中返回 true
。如果不想打开,请返回 false
。
通过深度链接进行再归因
Adjust 支持使用深度链接进行再交互推广活动。要了解更多信息,请参阅如何在深度链接中附加归因数据。
要对用户进行再归因,您需要在应用中对 Adjust SDK 做一个额外调用。应用接收到深度链接内容时,向 appWillOpenUrl(Uri, Context)
方法添加一个调用。此时,Adjust SDK 就会在深度链接中寻找新的归因信息。如果 SDK 找到新信息,就会将其转发至 Adjust 后端进行再归因。
链接解析
有的电子邮件服务提供商 (ESP) 会针对营销推广活动使用自有的自定义跟踪域名。如果您需要通过自定义域名跟踪点击,就要设置 SDK 以解析链接。为此,请调用 AdjustLinkResolution
类的 resolveLink
方法。此时,Adjust SDK 就会跟随自定义链接,在打开深度链接时进行解析。这样,您就能记录用户与电子邮件推广活动的互动了。
resolveLinkWithUrl
方法带有下列参数:
url
- 打开应用的深度链接。resolveUrlSuffixArray
- 需要解析的已设置推广活动自定义域。adjustLinkResolutionCallback
- 包含最终 URL 的回传。
该方法会比对深度链接和 resolveUrlSuffixArray
中的域。如果找不到任何匹配,就会按原样转发深度链接 URL。如果找到了匹配,就会尝试解析链接并返回得出的深度链接,并将其保存在 callback
参数中。此时,您就可以使用返回的深度链接进行用户再归因了。为此,请将深度链接传递至 Adjust.appWillOpenUrl
方法。
callback
URL。也就是说,如果要追溯的重定向超过 10 个,那么 SDK 就会返回第 10 个 重定向 URL。