adjust-icon

SDK v5 迁移指南

操作前须知

在更新到 SDK v5 之前,您需要进行以下操作:

  1. SDK v5 支持SDK 签名验证。如果您当前正在使用 SDK 签名库,则需要先将其卸载。
  2. 如果您的应用针对的是低于21的 API 版本,则需要先更新应用才能使用 SDK v5。

安装 SDK

要开始使用 SDK v5,您需要将其添加为项目的依赖。为此请进行下列操作:

  1. 请移除build.gradle文件中所有较旧版本的 SDK。

  2. 将以下依赖添加至您的build.gradle文件:

    build.gradle
    dependencies {
    implementation 'com.adjust.sdk:adjust-android:5.0.0'
    implementation 'com.android.installreferrer:installreferrer:2.2'
    // Add the following if you are using the Adjust SDK inside web views on your app
    implementation 'com.adjust.sdk:adjust-android-webbridge:5.0.0'
    }

更新初始化方法

于 v5 中变更

在 SDK v4 中,初始化方法为Adjust.onCreate(AdjustConfig) 。在 SDK v5 中,该方法已变为Adjust.initSdk(AdjustConfig)

配置 SDK 签名库

SDK v5 包含 SDK 签名库。您可以按照签名库集成指南中的测试步骤对此进行测试。

签名保护功能默认处于禁用状态。要启用该功能,您需要:

  1. 执行签名验证
  2. 在测试前提供应用的 SHA-1 指纹

安装 v5 SDK 后,您需要更新现有的 Adjust 代码以使用新的 API。

新 API

于 v5 中添加

SDK v5 中添加了下列 API。

Install Referrer getter

SDK v5 包含用于调取 Install Referrer 信息的新 getter 方法。

变更 API

于 v5 中变更

SDK v5 中的以下 API 发生了变更。

禁用或启用 SDK

在 SDK v4 中,您可以通过调用带boolean值的Adjust.setEnabled()来启用和禁用 SDK。

  • 调用Adjust.setEnabled(false)来禁用 SDK。
  • 调用Adjust.setEnabled(true)来启用 SDK。

在 SDK v5 中,为清晰起见,此功能被分成单独的命令。

  • 调用Adjust.disable()来禁用 SDK。
  • 调用Adjust.enable()来启用 SDK。

离线模式

在 SDK v4 中,您可以通过调用带有boolean值的Adjust.setOfflineMode()来启用或禁用 SDK 中的离线模式。

在 SDK v5 中,为清晰起见,此功能被分成单独的命令。

  • 调用Adjust.switchToOfflineMode()将 SDK 设为离线模式。
  • 调用Adjust.switchBackToOnlineMode()将 SDK 重新设为在线模式。

预装记录

在 SDK v4 中,您可以使用一个布尔参数调用AdjustConfig实例中的setPreinstallTrackingEnabled方法,使用 SDK 记录来自用户设备上预安装应用中的活动。

在 SDK v5 中,为清晰起见,该方法已被重命名为enablePreinstallTracking 。该方法不带参数。

发送会话信息

在 SDK v4 中,您需要实现ActivityLifecycleCallbacks并在 Activity 恢复和暂停时分别调用Adjust.onResume()Adjust.onPause()来注册 Activity 生命周期回传。

在 SDK v5 中,ActivityLifecycleCallbacks功能由 SDK 处理。请从代码中移除所有自定义活动生命周期回传。

会话回传参数

在SDK v5 中,会话回传参数已重命名为统一回传参数。

会话合作伙伴参数

在 SDK v5 中,会话合作伙伴参数已重命名为统一合作伙伴参数。

事件去重

在 SDK v4 中,事件去重与事件order ID同时进行且唯一 ID 的数量上限为 10 个。

在 SDK v5 中,该功能与order ID分离。事件去重添加了名为deduplicationId的新 ID 字段。用户可以自定义deduplicationId的数量限制,添加到用于识别重复事件的列表中。默认情况下,数量上限为 10

AdjustAttribution 类

在 SDK v4 中,AdjustAttribution调用包含一个名为adid的属性。在 SDK v5 中,adid属性已从AdjustAttribution类中移除。您可以使用getAdid() getter 方法获取设备的 ADID。

向 Adjust SDK 传输深度链接数据的方法已被重命名。

  • v4: Adjust.appWillOpenUrl()
  • v5: Adjust.processDeeplink()

延迟深度链接回传

在 SDK v4 中,您可以调用setOnDeeplinkResponseListener方法处理延迟深度链接回传。

在 SDK v5 中,为清晰起见,该方法已被重命名为setOnDeferredDeeplinkResponseListener 。所有参数都是相同的。

COPPA 合规

在 SDK v4 中,您可以使用布尔值在AdjustConfig实例上调用setCoppaCompliantEnabled方法,将应用标记为 COPPA 合规。

在 SDK v5 中,为清晰起见,该方法已被重命名为enableCoppaCompliance 。该方法不带参数。

Play Store 儿童应用

在 SDK v4 中,您可以通过布尔参数在AdjustConfig实例上调用setPlayStoreKidsAppEnabled方法将应用标记为Play 商店儿童应用

在 SDK v5 中,为清晰起见,该方法已被重命名为enablePlayStoreKidsCompliance 。该方法不带参数。

发送特定来源的广告收入

在 SDK v4 中,广告收入来源被定义为AdjustConfig类中的常量。在 SDK v5 中,广告收入来源需要以字符串形式传递。

v4v5
AdjustConfig.AD_REVENUE_APPLOVIN_MAX"applovin_max_sdk"
AdjustConfig.AD_REVENUE_ADMOB"admob_sdk"
AdjustConfig.AD_REVENUE_IRONSOURCE"ironsource_sdk"
AdjustConfig.AD_REVENUE_ADMOST"admost_sdk"
AdjustConfig.AD_REVENUE_UNITY"unity_sdk"
AdjustConfig.AD_REVENUE_HELIUM_CHARTBOOST"helium_chartboost_sdk"
AdjustConfig.AD_REVENUE_ADX"adx_sdk"
AdjustConfig.AD_REVENUE_SOURCE_PUBLISHER"publisher_sdk"
AdjustConfig.AD_REVENUE_TRADPLUS"tradplus_sdk"
AdjustConfig.AD_REVENUE_TOPON"topon_sdk"
AdjustConfig.AD_REVENUE_MOPUB"mopub"

设置数据驻留和 URL 策略

在 SDK v4 中,URL 策略和数据驻留域名在AdjustConfig类中被定义为常量。

在 SDK v5 中,您需要将选定的一个或多个域名以数组的形式发送。您还可以进行下列设置:

  • useSubdomains ( boolean ):来源是否为子域名作为前缀。
  • isDataResidency ( boolean ):域名是否用于数据驻留。

请查看下方表格,了解如何在 SDK v5 中配置 URL 策略。

v4v5 - 主要和后备域名v5 - 使用子域名v5 - 数据驻留
AdjustConfig.DATA_RESIDENCY_EU"eu.adjust.com"truetrue
AdjustConfig.DATA_RESIDENCY_TR"tr.adjust.com"truetrue
AdjustConfig.DATA_RESIDENCY_US"us.adjust.com"truetrue
AdjustConfig.URL_STRATEGY_CHINA"adjust.world""adjust.com"truefalse
AdjustConfig.URL_STRATEGY_CN"adjust.cn""adjust.com"truefalse
AdjustConfig.URL_STRATEGY_CN_ONLY"adjust.cn"truefalse
AdjustConfig.URL_STRATEGY_INDIA"adjust.net.in""adjust.com"truefalse

示例

设备 ID getter

在 SDK v4 中,所有设备 ID getter 方法都会同步运行。在 SDK v5 中,这些方法已改为异步运行。

移除 API

于 v5 中删除

SDK v5 中移除了下列 API。

事件缓冲

SDK v4 支持事件缓冲。该功能可将请求事件、广告收入、推送标签 (Push token) 和其他信息存储在本地缓冲区中以便在之后发送。

SDK v5 中已删除该设置。

自定义用户代理字符串

SDK v4 支持使用用户代理字符串调用 AdjustConfig.setUserAgent() 来设置自定义用户代理。

SDK v5 中已删除该设置。

设置设备是否已知

在 SDK v4 中,您可以调用AdjustConfig.setDeviceKnown()方法,手动告知 SDK 设备是否为已知设备。

SDK v5 中已删除该设置。

延迟 SDK 启动

SDK v4 支持通过调用AdjustConfig.setDelayStart()来延迟 SDK 的启动,最多延迟 120 秒

SDK v5 中已删除该设置。

全局禁用第三方分享

在 SDK v4 中,您可以调用Adjust.disableThirdPartySharing()方法来全面禁用第三方信息分享。

SDK v5 中已删除该功能。在 SDK v5 中,使用Adjust.trackThirdPartySharing()方法来启用或禁用第三方共享。

设置应用密钥

SDK v4 支持通过在AdjustConfig实例上调用setAppSecret方法来设置应用密钥,对 SDK 流量进行签名。

SDK v5 中已删除该设置。

新插件

于 v5 中添加

SDK v5 中添加了下列插件:

Huawei Install Referrer 插件

SDK v5 支持华为 Install Referrer 插件,以记录设备的华为 Install Referrer 信息。要添加插件,请将下列依赖添加至您的build.gradle文件:

build.gradle
dependencies {
implementation 'com.adjust.sdk:adjust-android-huawei-referrer:5.0.0'
}

Meta Install Referrer 插件

SDK v5 支持 Meta Install Referrer 插件,以记录Meta Install Referrer信息。要阅读此信息:

  1. 将以下依赖添加至您的 build.gradle 文件:

    build.gradle
    dependencies {
    implementation 'com.adjust.sdk:adjust-android-meta-referrer:5.0.0'
    }
  2. 应用控制面板中找到您的 Meta app ID。更多信息,请参考 Meta 的应用控制面板文档

  3. 将应用 ID 作为 String 参数传递至 AdjustConfig.setFbAppId 方法。

移除插件

于 v5 中删除

SDK v5 中移除了下列插件:

  • Criteo
  • Trademob
  • Sociomantic