Initialize

0. GDPR (General Data Protection Regulation)

GDPR은 유럽연합(이하 'EU')의 개인정보 보호 법령으로 서비스 제공자는 EU 사용자의 개인정보 또는 그에 준하는 정보에 대한 수집 및 활용에 대해 사용자에게 동의 여부를 확인 받아야 합니다. GDPR 규정 준수 및 규정에 따른 광고 네트워크 동작에 필요한 절차입니다.

1. 초기화 및 GDPR 컨텐츠 UI

초기화 시 유럽 경제 지역 (European Economic Area) 사용자의 GDPR 동의 여부를 받아 처리할 수 있는 관련 기능을 제공합니다. AppDelegate에서 광고 관련 코드를 요청하기 전에 초기화 함수를 호출합니다.

iOS ADX SDK에는 사용자로부터 GDPR 동의를 받을 수 있는 기능이 포함되어 있습니다.


2024년 1월 16일부터 IAB 유럽의 인증과 플랫폼 사업자의 인증을 받은 동의 플랫폼(CMP)를 통해 GDPR 동의 관리를 처리해야 됨에 따라, iOS ADX SDK 버전 2.5.0 이상부터, iOS ADX SDK 내부에서 자체적으로 제공되던 GDPR 동의 화면은 더 이상 지원되지 않으니, 애드몹 UMP (User Messaging Platform)를 통하여 GDPR 동의를 처리해야합니다.


유럽 경제 지역 (European Economic Area)에서 iOS 애플리케이션을 서비스하고 있거나, 또는 서비스할 계획이 있다면 iOS ADX SDK 버전 2.5.0 이상을 설치하고, 이 문서의 UMP (User Messaging Platfom) 이동하여 기술된 내용에 따라 설정하여 주십시오.

  • "<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) 사용자에게 동의 여부를 선택할 수 있도록 동의 화면을 제공합니다.

유럽 경제 지역 (European Economic Area) 사용자에게 동의 여부를 선택할 수 있는 기능이 애드몹 UMP (User Messaging Platform)에 의해서 처리되며, 애드몹 UMP 기능은 iOS ADX SDK 버전 2.5.0 이상에 포함되어 있습니다.

  • 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;
}

애드몹 UMP의 GDPR 동의 화면을 테스트 목적으로 확인하려면, 아래 두 가지 설정이 필요합니다.

1) 애드몹 대쉬보드 (https://apps.admob.com)로 이동한 다음에 아래 GDPR 메시지 작성 가이드 내용을 따라서 메시지 작성과 게시를 완료하십시오. https://support.google.com/admob/answer/10113207?hl=ko


2) iOS 앱을 디바이스에 설치하면 아래와 같은 메시지가 Xcode 콘솔에 출력됩니다. 이 식별자 문자열을 ADXConfiguration 객체 생성 시 사용하는 testDevices 파라미터에 입력하고, gdprType 파라미터에는 ADXGdprTypePopupDebug (popupDebug)를 사용하여 주십시오.


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


Case 2. 직접 동의 여부 설정

유럽 경제 지역 (European Economic Area) 사용자가 없거나 앱 내에 회원가입이나 GDPR에서 정하는 개인정보에 준하는 정보를 수집하고 있으시다면 한국에서 푸시알림 동의, 개인정보처리방침에 대해 동의절차를 진행하는 것과 같이 따로 직접 동의절차를 진행 및 처리해주셔야합니다.

  • 유럽 경제 지역 (European Economic Area) 외 지역으로 동의 여부가 필요 없는 경우, ADXConfiguration에서 GdprType을 ADXGdprTypeDirectNotRequired로 설정해주십시오.

UMP에서 GDPR과 IDFA (Identifier for Advertisers)접근 권한에 관한 제어를 같이 처리하기 때문에,ADXGdprTypeDirectNotRequired값으로 설정할 경우 IDFA 접근 권한까지 같이 획득할 수 없습니다. 이 경우 ATT (App Tracking Transparency) 동의 요청은, 프로그래밍 코드를 사용하여 수동으로 ATT 동의 알림을 요청하십시오.

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // 유의: 애드몹 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. Privacy Policy

AD(x)의 Privacy Policy 문서 URL은 ADXGdprManagerprivacyPolicyURL을 호출하여 사용하실 수 있습니다.

[ADXGdprManager sharedInstance].privacyPolicyURL;

4. 디버깅 로그 활성화

QA 진행 시 연동 및 미디에이션 정상 동작 확인을 위해 초기화 함수를 호출하기 전에 ADXConfiguration에서 logLevel을 추가해주시기 바랍니다.

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

Last updated