Initialize

0. GDPR (General Data Protection Regulation)

GDPR是欧盟(以下简称“EU”)的个人信息保护法规,服务提供者在收集和使用欧盟用户的个人信息或等同信息时,必须确认用户是否同意。这是为了遵守GDPR规定并满足基于该规定的广告网络操作所需的流程。

1. Initialize & GDPR Content UI

在初始化时,提供可处理来自欧洲经济区(European Economic Area)用户的 GDPR 同意与否的相关功能。 AppDelegate中,在请求与广告相关的代码之前调用初始化函数

  • "<ADX_APP_ID>"中使用 ADX 下发的 ADX App ID

  • SDK 初始化请在应用运行时只调用一次,并且 广告请求必须在初始化完成后进行。

    • ADXCompletionHandler被调用后,才应该请求广告。

  • GdprType 请从下列项中选择并输入。

GDPR 类型

说明

ADXGdprTypePopupLocation

根据地区弹出同意提示(EU地区)

ADXGdprTypePopupDebug

不论地区均弹出同意提示以供测试(DEBUG)

ADXGdprTypeDirectNotRequired

无需同意的地区(EU 以外地区)

ADXGdprTypeDirectDenied

用户拒绝个人信息的使用与收集

ADXGdprTypeDirectConfirm

用户同意个人信息的使用与收集

Case 1. 向 EEA 用户提供 GDPR 同意界面

为欧洲经济区(European Economic Area)用户提供可选择是否同意的同意界面。

  • 在 ADXConfiguration中将 GdprType 设置为 ADXGdprTypePopupLocation时,依据用户的接入国家,EU 用户可以通过 GDPR 同意界面(Consent UI)决定是否同意。

  • 将 GdprType 设置为 ADXGdprTypePopupDebug设置为时可无论访问国家如何都查看同意界面。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    ADXConfiguration *configuration = 
    [[ADXConfiguration alloc] initWithAppId:@"<ADX_APP_ID>"
        gdprType:ADXGdprTypePopupLocation
        testDevices:@[@""]];
                                                                     
    [[ADXSdk sharedInstance] initializeWithConfiguration:configuration
                                       completionHandler:^(BOOL result, ADXConsentState consentState) {
        NSLog(@"ADX Sdk Initialize");
    }];
    
    return YES;
}

若要测试查看 AdMob UMPGDPR 同意界面,需进行以下两项设置。 下面需进行两项设置。

1) 前往 AdMob 控制台(https://apps.admob.com),按以下 GDPR 消息编写指引完成消息的编写与发布。 https://support.google.com/admob/answer/10113207?hl=zh-Hans


2) 在 iOS 设备上安装应用后,Xcode 控制台会输出如下信息。请将该标识符字符串 在 ADXConfiguration 对象创建时使用的 testDevices 参数输入, gdprType 参数中请使用 ADXGdprTypePopupDebug(popupDebug)。


To enable debug mode for this device, set: UMPDebugSettings.testDeviceIdentifiers = @[ @"1C0484F0-1D76-4197-A63A-622C322D25CF" ];


<UMP GDPR 동의 화면>

Case 2. 直接设置同意状态

如果不存在欧洲经济区(European Economic Area)用户,或应用内并未收集 GDPR 所定义的等同于个人信息的信息, 则需要像在韩国进行推送通知同意、隐私政策同意等一样,单独进行并处理直接同意流程。需要您自行进行处理。

  • 如果面向欧洲经济区(European Economic Area)之外的地区且不需要征求同意, 在 ADXConfiguration中将 GdprType 设置为 ADXGdprTypeDirectNotRequired进行设置。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // 注意:若使用 AdMob UMP 的 IDFA 消息,请使用 'ADXGdprTypePopupLocation'
    ADXConfiguration *configuration = 
    [[ADXConfiguration alloc] initWithAppId:@"<ADX_APP_ID>"
        gdprType:ADXGdprTypeDirectNotRequired
        testDevices:@[@""]];
                                                                     
    [[ADXSdk sharedInstance] initializeWithConfiguration:configuration
                                       completionHandler:^(BOOL result, ADXConsentState consentState) {
        NSLog(@"ADX Sdk Initialize");
    }];
    
    return YES;
}

2. ConsentState

GDPR 同意状态有 4 个状态值。

状态

说明

ADXConsentStateUnknown

表示用户无同意信息,在此状态下不会展示个性化广告。

ADXConsentStateNotRequired

在不需要征求同意的地区(EU 以外地区)会展示个性化广告。

ADXConsentStateDenied

用户已拒绝个人信息的使用与收集的状态 不会展示个性化广告。

ADXConsentStateConfirm

用户同意个人信息的使用与收集的状态

将展示个性化广告。

在确认或变更同意状态时,请使用 ADXGdprManager 的以下函数。

// 您可以检查在ADXGdprManager中设置的用户同意信息。
[ADXGdprManager sharedInstance].consentState;

// 直接更改是否同意。
[[ADXGdprManager sharedInstance] setConsentState:ADXConsentStateConfirm];

3. GDPR 同意界面重新展示

您可以向用户重新公开 GDPR 同意屏幕,以更改同意的状态值。

#import <ADXLibrary/ADXLibrary.h>

UIViewController * viewController = self;
[[ADXSdk sharedInstance] showGDPRForm:viewController 
    completionHandler:^(BOOL result) {
    
}];
  • 请仅在用户触发的输入事件(例如按钮点击)中调用上述方法。如果在没有用户输入事件的情况下调用,可能无法正常工作。

  • 如果并非欧洲经济区(European Economic Area)地区,GDPR 同意界面可能不会被重新展示。

  • 如果已存在关于 GDPR 同意状态的信息,即使并非欧洲经济区地区,GDPR 同意界面也可能被展示。

4. Privacy Policy

可以通过调用 ADXGdprManagerprivacyPolicyURL 来使用 AD(x) 隐私政策文档的 URL。

[ADXGdprManager sharedInstance].privacyPolicyURL;

5. 启用调试日志

在进行 QA 时,为了确认集成及聚合的正常运行,请在调用初始化函数之前,在 ADXConfiguration 中添加 logLevel

 ADXConfiguration *configuration = 
 [[ADXConfiguration alloc] initWithAppId:@"<ADX_APP_ID>"
     gdprType:ADXGdprTypePopupLocation];
    
 configuration.logLevel = ADXLogLevelDebug;

6. 针对儿童的设置

如果您的服务要求根据《儿童在线隐私保护法》(COPPA) 将内容标记为面向儿童,或者面向居住在欧洲经济区 (EEA) 并未达到法定同意年龄的用户,则必须在调用初始化函数之前配置 AdMob 的定向设置。

有关更多信息,请参阅 AdMob 定位 ()。

最后更新于

这有帮助吗?