adjust-icon

深度链接

您可以创建深度链接来将用户转到应用中的特定页面。针对用户是否已在设备上安装您的应用,Adjust SDK 会使用不同的逻辑:

  • 直接深度链接:用于用户已经安装应用的情况。用户会被转向链接中指定的页面。
  • 如果用户尚未安装应用,那么就会发生延迟深度链接。链接首先会将用户转向应用商店页面来安装应用。用户安装后,就会被带到链接中指定的页面。

用户通过链接打开应用后,SDK 就可以读取深度链接数据了。

Set up deep linking

如果用户已经安装了您的应用,那么在与包含深度链接信息的链接互动时,应用就会打开。Adjust SDK 中包含的工具能够解析深度链接信息,在应用中使用。

在 v4.30 或更新版本中,SDK 会向安卓和 iOS 项目注入必要的设置。要配置深度链接,请在 Unity Editor inspector 窗口中添加 URL 方案

要在 React Native 应用中设置深度链接:

  1. 您需要在应用层级上设置深度链接。请按照下方链接中的说明,在您的目标平台上设置深度链接:

  2. 参考React Native 文档,按照其中说明学习如何支持两个平台。

  3. 在 JavaScript 代码中使用获得的深度链接 URL。

Deferred deep linking

Disable deferred deep linking

方法签名
public disableDeferredDeeplinkOpening(): void

SDK 默认自动打开延迟深度链接。您可以通过调用disableDeferredDeeplinkOpening方法来调整此设置。

const adjustConfig = new AdjustConfig(
"{YourAppToken}",
AdjustConfig.EnvironmentSandbox,
);
adjustConfig.disableDeferredDeeplinkOpening();
Adjust.initSdk(adjustConfig);
方法签名
public setDeferredDeeplinkCallback(callback: (deeplink: AdjustDeeplink) => void): void

您可以配置 Adjust SDK,使其在接收到延迟深度链接时调用一个委托函数。委托函数会以 string 参数的形式接收深度链接。

const adjustConfig = new AdjustConfig(
"{YourAppToken}",
AdjustConfig.EnvironmentSandbox,
);
adjustConfig.setDeferredDeeplinkCallback(function (deeplink) {
console.log("Deferred deep link URL content: " + deeplink.deeplink);
});
Adjust.initSdk(adjustConfig);

Example

该示例展示了如何在用户打开延迟深度链接时记录深度链接地址。

var LogDeepLink = function (deeplinkURL) {
console.log("Deeplink URL: " + deeplinkURL);
};
const adjustConfig = new AdjustConfig(
"{YourAppToken}",
AdjustConfig.EnvironmentSandbox,
);
adjustConfig.setDeferredDeeplinkCallback(LogDeepLink);
Adjust.initSdk(adjustConfig);
方法签名
processDeeplink: (adjustDeeplink: AdjustDeeplink) => void

Adjust 支持您使用深度链接开展再交互推广活动。要了解更多信息,请查看如何在 Campaign Lab 中设置深度链接

要对用户进行再归因,请在应用收到深度链接内容时调用 Adjust.processDeeplink 方法。这样,Adjust SDK 就会在深度链接中寻找新的归因信息。如果 SDK 找到新信息,就会将其转发至 Adjust 服务器进行再归因。

componentDidMount() {
Linking.addEventListener('url', this.handleDeepLink);
Linking.getInitialURL().then((url) => {
if (url) {
this.handleDeepLink({ url });
}
})
}
componentWillUnmount() {
Linking.removeEventListener('url', this.handleDeepLink);
}
handleDeepLink(deeplink) {
Adjust.processDeeplink(new AdjustDeeplink(deeplink.url));
}

Enable LinkMe

方法签名
public enableLinkMe(): void

通过 Adjust SDK,您可以从设备剪贴板复制深度链接信息。配合Adjust LinkMe 解决方案使用时,该功能可在 iOS 15 及更高版本操作系统中设置延迟深度链接。

当用户点击 LinkMe URL 时,可以选择将链接信息复制到剪贴板。您可以使用 Adjust SDK 读取系统剪贴板,获取深度链接信息。如果含有深度链接信息,SDK 就会将用户转到应用中的正确页面。

要在应用中启用剪贴板查看,请在 config 对象上调用enableLinkMe方法:

const adjustConfig = new AdjustConfig(
"{YourAppToken}",
AdjustConfig.EnvironmentSandbox,
);
adjustConfig.enableLinkMe();
Adjust.initSdk(adjustConfig);