adjust-icon

设置延迟深度链接

延迟深度链接让未安装您应用的用户可以点击 Adjust 链接,从应用商店安装应用,并在首次打开应用时直接跳转至其目标内容。

工作原理

以下是延迟深度链接的基本流程:

  1. 用户点击 Adjust 深度链接。

  2. Adjust 服务器将用户重定向至应用商店。

  3. 用户安装或重装并打开应用。

  4. Adjust SDK 向 Adjust 服务器发送 /session/attribution 请求。

  5. Adjust 服务器将匹配点击与安装/重装,并通过下列任一响应将延迟深度链接返回至 SDK:

    Adjust SDK 会通过延迟深度链接回传,向您的应用发送延迟深度链接。

  6. 如果适用,您的应用将显示其初始界面,例如新客户引导界面和用户登录界面。

  7. 您的应用处理深度链接,并导航至相应界面。

当用户点击 Adjust 品牌化链接 (brandname.go.link),且该链接被延迟时,Adjust 的服务器会使用在 Adjust 控制面板的 iOS 平台设置中配置的应用 Scheme,将其转换为应用 Scheme 格式 (example://),然后传递给 Adjust SDK。

设置

  1. 遵循 AppDelegate 中的 AdjustDelegate 协议。如果您已经配置归因回传,可以跳过这一步。
  1. 在初始化 SDK 之前,在 Adjust 配置中将 AppDelegate 指定为委托。
  1. 向应用委托添加 adjustDeferredDeeplinkReceived 回传方法。Adjust SDK 收到延迟深度链接后会调用该方法。

返回值选项

adjustDeferredDeeplinkReceived 的返回值决定了回传代码执行完毕后将执行什么操作:

返回 false (最常见)

如果希望您的应用对延迟深链接的处理时间和方式拥有完全控制权,请采用此方法。返回 false 时,Adjust SDK 不会尝试打开延迟深度链接。例如,如果您的应用需要在处理延迟深度链接之前显示并跳过初始界面 (如新客户引导或登录界面),则此方法十分适用。

返回 true

如果您希望 Adjust SDK 在回传代码运行完毕后立即尝试打开延迟深度链接,请使用此方法。例如,如果您的应用没有任何初始界面,则此方法十分适用。

当 Adjust SDK 收到延迟深度链接时,将运行 Adjust 回传代码,然后 Adjust SDK 会使用该链接调用 application(_:open:options:),iOS 随后根据您的应用设置将其路由到相应的处理程序:

应用实施处理程序
使用 AppDelegate 的 UIKitapplication(_:open:options:)
使用 SceneDelegate 的 UIKitscene(_:openURLContexts:)
SwiftUI.onOpenURL 修饰符

如需处理来自上述相应处理程序的深度链接,请确保您已实施直接深度链接

完整代码示例

此示例展示了拥有新客户引导流程的应用如何处理延迟深度链接。应用内部流程总结如下:

  1. 用户打开应用,延迟深度链接进入可用状态。

  2. 应用开始其新客户引导流程。

  3. 应用的回传从 Adjust SDK 接收延迟深度链接,然后检查新客户引导是否完成:

    • 如果已完成新客户引导,会立即处理深度链接。
    • 如果未完成新客户引导,则会存储深度链接。
  4. 新客户引导完成后,应用会检查并处理所有已存储的延迟深度链接。

  5. 应用将用户引导至深度链接界面。

AppDelegate

突出显示的代码中包含 AppDelegate 的延迟深度链接更新。此示例适用于 UIKit 和 SwiftUI 示例。

UIKit

SwiftUI