Adjust SDK 包含处理应用用户隐私的功能。
发送删除请求
在处理个人数据方面,欧盟的《通用数据保护条例》(GDPR) 和全球类似的隐私法律 (CCPA、LGPD 等) 授予数据主体完全权利,其中包括删除权 (参见 GDPR 第 17 条)( 1 )。作为数据处理方,Adjust 有义务支持您 (数据控制方) 处理来自应用用户的此类请求。
您可以通过调用 gdprForgetMe 方法来将用户的删除请求发送至 Adjust 服务器。收到通知后:
我们将从内部系统和数据库中永久删除用户的所有历史个人数据;
此外,Adjust 将不再通过 Adjust SDK 接收来自该用户/设备的数据。 ( 2 )
针对特定用户的第三方分享
您可以使用 Adjust SDK 来记录用户对第三方数据分享设置的变更。请使用 ADJThirdPartySharing 类配置第三方数据分享设置。
实例化 ADJThirdPartySharing 对象
- (nullable id )initWithIsEnabled:(nullable NSNumber * )isEnabled;
要启用或禁用 Adjust SDK 第三方数据分享,请实例化一个 ADJThirdPartySharing 对象。该对象中包含的变量控制 Adjust 处理第三方数据分享的方式。
要实例化第三方数据分享对象,请创建新的 ADJThirdPartySharing 实例,并传送下列参数:
isEnabled (NSNumber):第三方数据分享是否启用。传送 1 可启用第三方分享;传送 0 可禁用第三方分享。
guard let adjustThirdPartySharing = ADJThirdPartySharing ( isEnabled : 1 ) else { return }
Adjust. trackThirdPartySharing (adjustThirdPartySharing)
ADJThirdPartySharing * adjustThirdPartySharing = [[ADJThirdPartySharing alloc ] initWithIsEnabled: @ 1 ];
[Adjust trackThirdPartySharing: adjustThirdPartySharing];
完成 ADJThirdPartySharing 对象实例化后,您就能以参数形式使用 ADJThirdPartySharing 实例调用 Adjust.trackThirdPartySharing 方法,以向 Adjust 发送信息。
guard let adjustThirdPartySharing = ADJThirdPartySharing ( isEnabled : 0 ) else { return }
Adjust. trackThirdPartySharing (adjustThirdPartySharing)
ADJThirdPartySharing * adjustThirdPartySharing = [[ADJThirdPartySharing alloc ] initWithIsEnabled: @ 0 ];
[Adjust trackThirdPartySharing: adjustThirdPartySharing];
- ( void )addGranularOption:(nonnull NSString * )partnerName
key:(nonnull NSString * )key
value:(nonnull NSString * )value;
当用户更新第三方数据分享设置时,您可以附加较精细的信息,以此发送用户决定的更多细节。为此,请使用下列参数调用addGranularOption方法:
partnerName (NSString):使用精细设置的合作伙伴的名称。
key (NSString):选项 key。
value (NSString):选项值。
可用合作伙伴如下:
合作伙伴名称 字符串值 Apple Ads apple_adsFacebook facebookGoogle Ads adwordsGoogle Marketing Platform google_marketing_platformSnapchat snapchat腾讯 tencentTikTok SAN tiktok_sanX (前 Twitter) twitterYahoo Gemini yahoo_geminiYahoo Japan Search yahoo_japan_search
guard let adjustThirdPartySharing = ADJThirdPartySharing ( isEnabled : nil ) else { return }
adjustThirdPartySharing. addGranularOption ( "PartnerA" , key : "foo" , value : "bar" )
Adjust. trackThirdPartySharing (adjustThirdPartySharing)
ADJThirdPartySharing * adjustThirdPartySharing = [[ADJThirdPartySharing alloc ] initWithIsEnabled:nil ];
[adjustThirdPartySharing addGranularOption: @"PartnerA" key: @"foo" value: @"bar" ];
[Adjust trackThirdPartySharing: adjustThirdPartySharing];
管理 Facebook “限制数据使用” 功能
为遵守《加州消费者隐私法案》(CCPA) 的规定,Facebook 提供了 “限制数据使用” (LDU) 功能。借助该功能,在有位于美国加利福尼亚州的用户选择拒绝数据出售时,您就能向 Facebook 发送通知。如果您希望将所有用户的默认许可状态设为拒绝,也可以使用该功能。
您可以通过向 addGranularOption 方法传递下列参数来更新 Facebook LDU 状态。
参数 描述 partner_name请使用facebook来开启或关闭 LDU。 data_processing_options_country用户所在的国家/地区0: 要求 Facebook 使用地理位置。1: 美利坚合众国。 data_processing_options_state通知 Facebook 用户所处的州。0: 要求 Facebook 使用地理位置。1000: 加利福尼亚州1001: 科罗拉多州1002: 康涅狄格州
guard let tps = ADJThirdPartySharing ( isEnabled : nil ) else { return }
tps. addGranularOption ( "facebook" , key : "data_processing_options_country" , value : "1" )
tps. addGranularOption ( "facebook" , key : "data_processing_options_state" , value : "1000" )
Adjust. trackThirdPartySharing (tps)
ADJThirdPartySharing * tps = [[ADJThirdPartySharing alloc ] initWithIsEnabled: @ 1 ];
[tps addGranularOption: @"facebook" key: @"data_processing_options_country" value: @"1" ];
[tps addGranularOption: @"facebook" key: @"data_processing_options_state" value: @"1000" ];
[Adjust trackThirdPartySharing: tps];
向 Google 提供许可数据 (《数字市场法案》合规)
要符合欧盟的《数字市场法案》(Digital Markets Act,简称 DMA),Google Ads 和 Google Marketing Platform 需要获得明确的用户许可,才能接收 Adjust 向其 API 发送的归因请求。要发送该许可,您需要针对合作伙伴将以下精细选项添加至第三方分享实例google_dma。
密钥 值 描述 eea1 (是) | 0 (否)告知 Adjust 安装应用的用户是否位于欧洲经济区。 欧洲经济区包括欧盟成员国、瑞士、挪威、冰岛和斯洛文尼亚。 ad_personalization1 (是) | 0 (否)告知 Adjust 用户是否同意通过 Google Ads 和/或 Google Marketing Platform 接收个性化广告。此参数还为针对 Google Marketing Platform 的npa参数提供信息。 ad_user_data1 (是) | 0 (否)告知 Adjust 用户是否允许其广告主 ID 被用于归因相关目的。
guard let adjustThirdPartySharing = ADJThirdPartySharing ( isEnabled : nil ) else { return }
adjustThirdPartySharing. addGranularOption ( "google_dma" , key : "eea" , value : "1" )
adjustThirdPartySharing. addGranularOption ( "google_dma" , key : "ad_personalization" , value : "1" )
adjustThirdPartySharing. addGranularOption ( "google_dma" , key : "ad_user_data" , value : "1" )
Adjust. trackThirdPartySharing (adjustThirdPartySharing)
ADJThirdPartySharing * adjustThirdPartySharing = [[ADJThirdPartySharing alloc ]
[adjustThirdPartySharing addGranularOption: @"google_dma" key: @"eea" value: @"1" ];
[adjustThirdPartySharing addGranularOption: @"google_dma" key: @"ad_personalization" value: @"1" ];
[adjustThirdPartySharing addGranularOption: @"google_dma" key: @"ad_user_data" value: @"1" ];
[Adjust trackThirdPartySharing: adjustThirdPartySharing];
向 Amazon Ads 提供许可数据 (《数字市场法案》合规)
要符合欧盟的《数字市场法案》(Digital Markets Act,简称 DMA),Amazon Ads 需要获得明确的用户许可,才能接收 Adjust 向其 API 发送的归因请求。要发送该许可,您需要针对合作伙伴将以下精细选项添加至第三方分享实例amazon_dma。
密钥 值 描述 ad_user_data1 (是) | 0 (否)告知 Amazon Ads 用户是否同意分享个人数据用于监测目的。该许可适用于广告主在 Amazon Ads 用户界面中指定的所有核心平台服务 (CPS)。 ad_storage1 (是) | 0 (否)了解用户是否同意 Amazon Ads 使用营销相关数据存储
guard let adjustThirdPartySharing = ADJThirdPartySharing ( isEnabled : nil ) else { return }
adjustThirdPartySharing. addGranularOption ( "amazon_dma" , key : "ad_user_data" , value : "1" )
adjustThirdPartySharing. addGranularOption ( "amazon_dma" , key : "ad_storage" , value : "1" )
Adjust. trackThirdPartySharing (adjustThirdPartySharing)
ADJThirdPartySharing * adjustThirdPartySharing = [[ADJThirdPartySharing alloc ] initWithIsEnabled:nil ];
[adjustThirdPartySharing addGranularOption: @"amazon_dma" key: @"ad_user_data" value: @"1" ];
[adjustThirdPartySharing addGranularOption: @"amazon_dma" key: @"ad_storage" value: @"1" ];
[Adjust trackThirdPartySharing: adjustThirdPartySharing];
更新合作伙伴分享设置
- ( void )addPartnerSharingSetting:(nonnull NSString * )partnerName
key:(nonnull NSString * )key
默认情况下,Adjust 会与您在应用设置中配置的合作伙伴共享所有指标。您可以使用 Adjust SDK,为每个合作伙伴分别更新第三方数据共享设置。为此,请使用以下参数调用 addPartnerSharingSetting 方法:
参数 数据类型 描述 partnerNameString合作伙伴 ID。下载可用合作伙伴的完整列表 keyString与合作伙伴共享的指标 valueBoolean用户的决定
使用 partnerName 参数来选择要禁用或重新启用其指标共享设置的合作伙伴范围:
传递 all 以更新所有合作伙伴(包括 SAN 合作伙伴、模块合作伙伴和动态回传)的共享设置。
传递合作伙伴 ID,以更新特定合作伙伴的共享设置。SAN 和非 SAN 合作伙伴均支持使用合作伙伴 ID,建议使用。
传递 dynamic_callbacks 以更新动态回传的共享设置。
您可以使用key来指定要禁用或重新启用的指标。如果您想启用/禁用所有指标的分享,可以使用all键。可用指标的完整列表如下:
ad_revenue
all
update
att_update
event
install
reattribution
reattribution_reinstall
reinstall
rejected_install
rejected_reattribution
sdk_click
sdk_info
session
subscription
uninstall
指标组
当您针对合作伙伴的指标设置 false 值时,Adjust 将停止与该合作伙伴分享该指标,以及指标组中的所有子级指标。这些嵌套组包括:
会话
安装
重装
再归因
rejected_reattribution
reattribution_reinstall
此处:
如果禁用 session 分享,那么它的所有子级指标也将被禁用。
如果您禁用 session 共享,但启用了 reattribution 共享,那么除 reattribution 外的所有对应子级指标都将被禁用。
如果您禁用 session 共享,但启用了 install 共享,那么除 install 外的所有 session 子级指标都将被禁用。install 的子级指标将保持启用状态。
如果您启用 session 共享,但禁用了 install 共享,那么除 install 外的所有 session 子级指标都将被启用。install 的子级指标将保持禁用状态。
示例
如果您想停止与特定合作伙伴分享所有指标,请发送带有false值的all键。
guard let adjustThirdPartySharing = ADJThirdPartySharing ( isEnabled : nil ) else { return }
adjustThirdPartySharing. addPartnerSharingSetting ( "partner_id" , key : "all" , value : false )
Adjust. trackThirdPartySharing (adjustThirdPartySharing)
ADJThirdPartySharing * adjustThirdPartySharing = [[ADJThirdPartySharing alloc ] initWithIsEnabled:nil ];
[adjustThirdPartySharing addPartnerSharingSetting: @"partner_id" key: @"all" value: @ NO ];
[Adjust trackThirdPartySharing: adjustThirdPartySharing];
要重新启用针对特定合作伙伴的分享,请发送带有 true 值的 all 键。
guard let adjustThirdPartySharing = ADJThirdPartySharing ( isEnabled : nil ) else { return }
adjustThirdPartySharing. addPartnerSharingSetting ( "partner_id" , key : "all" , value : true )
Adjust. trackThirdPartySharing (adjustThirdPartySharing)
ADJThirdPartySharing * adjustThirdPartySharing = [[ADJThirdPartySharing alloc ] initWithIsEnabled:nil ];
[adjustThirdPartySharing addPartnerSharingSetting: @"partner_id" key: @"all" value: @ YES ];
[Adjust trackThirdPartySharing: adjustThirdPartySharing];
如果您只想与 partner_id 分享数据,请进行下列传送:
all 键 (针对 all 合作伙伴),值为 false,以禁用与全部合作伙伴分享所有信息。
all 键(针对 partner_id),值为 true,以明确启用与该合作伙伴共享全部信息。
guard let adjustThirdPartySharing = ADJThirdPartySharing ( isEnabled : nil ) else { return }
adjustThirdPartySharing. addPartnerSharingSetting ( "all" , key : "all" , value : false )
adjustThirdPartySharing. addPartnerSharingSetting ( "partner_id" , key : "all" , value : true )
Adjust. trackThirdPartySharing (adjustThirdPartySharing)
ADJThirdPartySharing * adjustThirdPartySharing = [[ADJThirdPartySharing alloc ] initWithIsEnabled:nil ];
[adjustThirdPartySharing addPartnerSharingSetting: @"all" key: @"all" value: @ NO ];
[adjustThirdPartySharing addPartnerSharingSetting: @"partner_id" key: @"all" value: @ YES ];
[Adjust trackThirdPartySharing: adjustThirdPartySharing];
如果您只想与 all 合作伙伴分享 session 数据,那么请进行下列传送:
all 键 (针对 all 合作伙伴),值为 false,以禁用与全部合作伙伴分享所有信息。
session 键 (针对 all 合作伙伴),值为 true,以启用与 all 合作伙伴的 session 数据及其全部相关“子级”指标。
guard let adjustThirdPartySharing = ADJThirdPartySharing ( isEnabled : nil ) else { return }
adjustThirdPartySharing. addPartnerSharingSetting ( "all" , key : "all" , value : false )
adjustThirdPartySharing. addPartnerSharingSetting ( "all" , key : "session" , value : true )
Adjust. trackThirdPartySharing (adjustThirdPartySharing)
ADJThirdPartySharing * adjustThirdPartySharing = [[ADJThirdPartySharing alloc ] initWithIsEnabled:nil ];
[adjustThirdPartySharing addPartnerSharingSetting: @"all" key: @"all" value: @ NO ];
[adjustThirdPartySharing addPartnerSharingSetting: @"all" key: @"session" value: @ YES ];
[Adjust trackThirdPartySharing: adjustThirdPartySharing];
如果您只想与 partner_id 分享 session 数据,那么请进行下列传送:
all 键 (针对 all 合作伙伴),值为 false,以禁用与全部合作伙伴分享所有信息。
session 键(针对 partner_id),值为 true,以启用与该合作伙伴共享 session 数据及其全部相关“子级”指标。
guard let adjustThirdPartySharing = ADJThirdPartySharing ( isEnabled : nil ) else { return }
adjustThirdPartySharing. addPartnerSharingSetting ( "all" , key : "all" , value : false )
adjustThirdPartySharing. addPartnerSharingSetting ( "partner_id" , key : "session" , value : true )
Adjust. trackThirdPartySharing (adjustThirdPartySharing)
ADJThirdPartySharing * adjustThirdPartySharing = [[ADJThirdPartySharing alloc ] initWithIsEnabled:nil ];
[adjustThirdPartySharing addPartnerSharingSetting: @"all" key: @"all" value: @ NO ];
[adjustThirdPartySharing addPartnerSharingSetting: @"partner_id" key: @"session" value: @ YES ];
[Adjust trackThirdPartySharing: adjustThirdPartySharing];
如果您想禁用 dynamic_callbacks,请发送带有 false 值的 all 键。
guard let adjustThirdPartySharing = ADJThirdPartySharing ( isEnabled : nil ) else { return }
adjustThirdPartySharing. addPartnerSharingSetting ( "dynamic_callbacks" , key : "all" , value : false )
Adjust. trackThirdPartySharing (adjustThirdPartySharing)
ADJThirdPartySharing * adjustThirdPartySharing = [[ADJThirdPartySharing alloc ] initWithIsEnabled:nil ];
[adjustThirdPartySharing addPartnerSharingSetting: @"dynamic_callbacks" key: @"all" value: @ NO ];
[Adjust trackThirdPartySharing: adjustThirdPartySharing];
您可以使用不同的键多次调用addPartnerSharingSetting方法来停止或开始共享特定指标。例如,如果您只想与合作伙伴分享事件信息,则可以传递:
all 值为false以禁用所有信息分享。
event 值为true以启用事件共享。
guard let adjustThirdPartySharing = ADJThirdPartySharing ( isEnabled : nil ) else { return }
adjustThirdPartySharing. addPartnerSharingSetting ( "partner_id" , key : "all" , value : false )
adjustThirdPartySharing. addPartnerSharingSetting ( "partner_id" , key : "event" , value : true )
Adjust. trackThirdPartySharing (adjustThirdPartySharing)
ADJThirdPartySharing * adjustThirdPartySharing = [[ADJThirdPartySharing alloc ] initWithIsEnabled:nil ];
[adjustThirdPartySharing addPartnerSharingSetting: @"partner_id" key: @"all" value: @ NO ];
[adjustThirdPartySharing addPartnerSharingSetting: @"partner_id" key: @"event" value: @ YES ];
[Adjust trackThirdPartySharing: adjustThirdPartySharing];
获取当前第三方分享设置
向 Adjust 发送 ADJThirdPartySharing 设置后,Adjust 后端的响应中会包含当前的总体设置。您可以通过调用 getter 方法,或配置变更回调来获取该信息。
带有超时 的第三方共享设置的 Getter 方法
+ ( void )thirdPartySharingSettingsWithTimeout:( NSInteger )timeoutMs
completionHandler:(nonnull ADJThirdPartySharingGetterBlock)completion;
您也可以同时提供 completion handler 和超时值 (以毫秒为单位),通过调用 [Adjust thirdPartySharingSettingsWithTimeout:completionHandler:] 请求当前的第三方共享设置。如果 SDK 有可用的设置或在指定的超时时间内收到了设置,就会向您的 completion handler 传递一个 ADJThirdPartySharingResult 对象。否则会传送 nil。
Adjust. thirdPartySharingSettings ( withTimeout : timeoutMs) { thirdPartySharingResult in
// add your completion handler
[Adjust thirdPartySharingSettingsWithTimeout: timeoutMs
completionHandler: ^ (ADJThirdPartySharingResult * _Nullable thirdPartySharingResult) {
// add your completion handler
第三方分享设置发生变更时触发函数
@ property (nonatomic, weak, nullable) NSObject < adjustdelegate > * delegate;
SDK 可以监听第三方分享设置更新并在从后端收到设置变更时调用一个函数。当收到的设置与最新的缓存设置不同时会触发回调。要配置您的委托函数 :
向您的应用委托添加 AdjustDelegate 声明。
class AppDelegate : UIResponder , UIApplicationDelegate , AdjustDelegate {
@interface AppDelegate : UIResponder <UIApplicationDelegate, AdjustDelegate>
添加委托回传功能至您的应用委托实现。
func adjustThirdPartySharingSettingsChanged ( _ thirdPartySharingResult: ADJThirdPartySharingResult ? ) {
// read thirdPartySharingResult
- ( void )adjustThirdPartySharingSettingsChanged:(ADJThirdPartySharingResult * )thirdPartySharingResult {
// read thirdPartySharingResult
在初始化 SDK 之前,请使用 Adjust 配置实例设置委托。
let yourAppToken = "{YourAppToken}"
let environment = ADJEnvironmentSandbox
let adjustConfig = ADJConfig ( appToken : yourAppToken, environment : environment)
adjustConfig ? .delegate = self
Adjust. initSdk (adjustConfig)
ADJConfig * adjustConfig = [[ADJConfig alloc ] initWithAppToken: @"{YourAppToken}"
environment: ADJEnvironmentSandbox];
[adjustConfig setDelegate:self ];
[Adjust initSdk: adjustConfig];
设置 URL 策略
- ( void )setUrlStrategy:(nullable NSArray * )urlStrategyDomains
useSubdomains:( BOOL )useSubdomains
isDataResidency:( BOOL )isDataResidency;
通过 URL 策略功能,您可以进行下列设置之一:
Adjust 储存您数据的国家/地区 (即数据驻留)。
接收 Adjust SDK 所发送流量的终端 (即 URL 策略)。
当应用运营的国家拥有严格的隐私规定时,此功能会非常有用。在您设置 URL 策略时,Adjust 会将数据储存在指定数据驻留地区,或将流量发送至选定域名。
要设置数据驻留国家,请使用以下参数调用AdjustConfig.setUrlStrategy方法:
urlStrategyDomains (NSArray):接收您所发送 SDK 流量的数据驻留国家/地区或终端。
useSubdomains ( BOOL ):来源是否为子域名作为前缀。
isDataResidency ( BOOL ):域名是否用于数据驻留。
请查看下方映射列表。
URL 策略 主要和后备域名 使用子域名 数据驻留 欧盟数据驻留 "eu.adjust.com"truetrue土耳其数据驻留 "tr.adjust.com"truetrue数据驻留 "us.adjust.com"truetrue中国统一 URL 策略 "adjust.world", "adjust.com"truefalse中国 URL 策略 "adjust.cn", "adjust.com"truefalse仅限中国地区的 URL 策略 "adjust.cn"truefalse印度 URL 策略 "adjust.net.in", "adjust.com"truefalse
let domain = [] as [ String ]
adjustConfig. setUrlStrategy (domain, useSubdomains : true , isDataResidency : false )
[adjustConfig setUrlStrategy: domain useSubdomains:YES
示例
let domain = [ "adjust.net.in" , "adjust.com" ]
adjustConfig ? . setUrlStrategy (domain, useSubdomains : true , isDataResidency : false )
let domain = [ "adjust.world" , "adjust.com" ]
adjustConfig ? . setUrlStrategy (domain, useSubdomains : true , isDataResidency : false )
let domain = [ "adjust.cn" ]
adjustConfig ? . setUrlStrategy (domain, useSubdomains : true , isDataResidency : false )
let domain = [ "eu.adjust.com" ]
adjustConfig ? . setUrlStrategy (domain, useSubdomains : true , isDataResidency : true )
let domain = [ "tr.adjust.com" ]
adjustConfig ? . setUrlStrategy (domain, useSubdomains : true , isDataResidency : true )
let domain = [ "us.adjust.com" ]
adjustConfig ? . setUrlStrategy (domain, useSubdomains : true , isDataResidency : true )
NSArray * domain = [[ NSArray alloc ]
initWithObjects: @"adjust.net.in" , @"adjust.com" , nil ];
[adjustConfig setUrlStrategy: domain useSubdomains:YES isDataResidency:NO ];
NSArray * domain = [[ NSArray alloc ]
initWithObjects: @"adjust.world" , @"adjust.com" , nil ];
[adjustConfig setUrlStrategy: domain useSubdomains:YES isDataResidency:NO ];
NSArray * domain = [[ NSArray alloc ]
initWithObjects: @"adjust.cn" , nil ];
[adjustConfig setUrlStrategy: domain useSubdomains:YES isDataResidency:NO ];
NSArray * domain = [[ NSArray alloc ]
initWithObjects: @"eu.adjust.com" , nil ];
[adjustConfig setUrlStrategy: domain useSubdomains:YES isDataResidency:YES ];
NSArray * domain = [[ NSArray alloc ]
initWithObjects: @"tr.adjust.com" , nil ];
[adjustConfig setUrlStrategy: domain useSubdomains:YES isDataResidency:YES ];
NSArray * domain = [[ NSArray alloc ]
initWithObjects: @"us.adjust.com" , nil ];
[adjustConfig setUrlStrategy: domain useSubdomains:YES isDataResidency:YES ];
针对特定用户的许可监测
+ ( void )trackMeasurementConsent:( BOOL )enabled;
如果您正在 Adjust 控制面板中使用数据隐私设置 ,那么则需要对 Adjust SDK 做出相应设置。这包括设置许可有效期和用户数据留存期。
要开启或关闭该功能,请使用下列参数调用 trackMeasurementConsent 方法:
measurementConsent (BOOL):许可监测是 (true) 否 (false) 启用。
开启后,SDK 会将数据隐私设置发送至 Adjust 服务器。Adjust 服务器随后会将您的数据隐私规则应用于用户,Adjust SDK 将会继续如常运行。
Adjust. trackMeasurementConsent ( true )
[Adjust trackMeasurementConsent:YES ];
COPPA 合规
+ ( void )enableCoppaCompliance;
如果您的应用需要符合 COPPA (儿童在线隐私保护法) 规定,请在 SDK 初始化前在 ADJConfig实例上调用enableCoppaCompliance 方法。此方法会进行如下操作:
禁用第三方数据分享。
阻止 SDK 读取设备和广告 ID (例如idfa )。
let yourAppToken = "{YourAppToken}"
let environment = ADJEnvironmentSandbox as? String
let adjustConfig = ADJConfig (
environment : environment)
adjustConfig ? . enableCoppaCompliance ()
Adjust. initSdk (adjustConfig)
NSString * yourAppToken = @"{YourAppToken}" ;
NSString * environment = ADJEnvironmentSandbox;
ADJConfig * adjustConfig = [[ADJConfig alloc ] initWithAppToken: yourAppToken
environment: environment];
[adjustConfig enableCoppaCompliance ];
[Adjust initSdk: adjustConfig];
Disable device IDs reading
The SDK provides several methods to restrict reading and tracking of various device identifiers. You can use these methods to comply with privacy regulations.
Disable reading of IDFA
- ( void )disableIdfaReading;
You can prevent the Adjust SDK from reading a device’s IDFA by calling the disableIdfaReading method on your ADJConfig instance. When you call this method, the Adjust SDK is prevented from reading the device’s IDFA and sending it to Adjust.
let yourAppToken = "{YourAppToken}"
let environment = ADJEnvironmentSandbox
let adjustConfig = ADJConfig (
environment : environment)
adjustConfig ? . disableIdfaReading ();
NSString * yourAppToken = @"{YourAppToken}" ;
NSString * environment = ADJEnvironmentSandbox;
ADJConfig * adjustConfig = [[ADJConfig alloc ] initWithAppToken: @"{YourAppToken}"
environment: ADJEnvironmentSandbox];
[adjustConfig disableIdfaReading ];
禁用 IDFV 读取
- ( void )disableIdfvReading;
您可以通过在ADJConfig实例上调用disableIdfvReading方法来阻止 Adjust SDK 读取供应商 ID (IDFV)。调用此方法时,Adjust SDK将无法读取设备的 IDFV 或将其发送至 Adjust。
let yourAppToken = "{YourAppToken}"
let environment = ADJEnvironmentSandbox
let adjustConfig = ADJConfig (
environment : environment)
adjustConfig ? . disableIdfvReading ();
NSString * yourAppToken = @"{YourAppToken}" ;
NSString * environment = ADJEnvironmentSandbox;
ADJConfig * adjustConfig = [[ADJConfig alloc ] initWithAppToken: @"{YourAppToken}"
environment: ADJEnvironmentSandbox];
[adjustConfig disableIdfvReading ];
Disable reading of Facebook ID
- ( void )disableFbIdReading;
You can prevent the Adjust SDK from reading a device’s Facebook Anonymous ID by calling the disableFbIdReading method on your ADJConfig instance. When you call this method, the Adjust SDK is prevented from reading the device’s Facebook Anonymous ID and sending it to Adjust.
let yourAppToken = "{YourAppToken}"
let environment = ADJEnvironmentSandbox
let adjustConfig = ADJConfig (
environment : environment)
adjustConfig ? . disableFbIdReading ();
NSString * yourAppToken = @"{YourAppToken}" ;
NSString * environment = ADJEnvironmentSandbox;
ADJConfig * adjustConfig = [[ADJConfig alloc ] initWithAppToken: @"{YourAppToken}"
environment: ADJEnvironmentSandbox];
[adjustConfig disableFbIdReading ];
Disable reading of all device IDs
- ( void )disableDeviceIdsReading;
You can prevent the Adjust SDK from reading a device’s identifiers by calling the disableDeviceIdsReading method on your ADJConfig instance. This prevents from reading the device’s IDFA, IDFV, and Facebook Anonymous ID, and sending them to Adjust.
let yourAppToken = "{YourAppToken}"
let environment = ADJEnvironmentSandbox
let adjustConfig = ADJConfig (
environment : environment)
adjustConfig ? . disableDeviceIdsReading ();
NSString * yourAppToken = @"{YourAppToken}" ;
NSString * environment = ADJEnvironmentSandbox;
ADJConfig * adjustConfig = [[ADJConfig alloc ] initWithAppToken: @"{YourAppToken}"
environment: ADJEnvironmentSandbox];
[adjustConfig disableDeviceIdsReading ];