Initialize

0. GDPR (General Data Protection Regulation)

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

1. Initialize & GDPR Content UI

초기화 시 EU 사용자의 GDPR 동의 여부를 받아 처리할 수 있는 관련 기능을 제공합니다. Main Activity의 onCreate에서 광고 관련 코드를 요청하기 전에 초기화 함수를 호출합니다.

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


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


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

  • "<ADX_APP_ID>"에 ADX에서 발급받은 ADX App ID를 사용합니다.

  • SDK 초기화는 앱 실행 시 한 번만 호출하여 주시고, 광고 요청은 초기화가 완료된 후에 이뤄져야 합니다.

    • onCompleted가 호출 된 후, 광고를 요청해야 합니다.

  • GdprType은 아래 항목 중 하나를 선택하여 입력합니다.

GDPR 타입

설명

POPUP_LOCATION

지역에 따라 동의 팝업 호출 (EU 지역)

POPUP_DEBUG

지역 상관없이 동의 팝업 호출 테스트 (DEBUG)

DIRECT_NOT_REQUIRED

동의 여부가 필요없는 지역 (EU 외 지역)

DIRECT_DENIED

사용자가 개인정보 활용 및 수집 거부

DIRECT_CONFIRM

사용자가 개인정보 활용 및 수집 동의

Case 1. EEA 사용자의 GDPR 동의 화면 제공

유럽 경제 지역 (European Economic Area) 사용자에게 동의 여부를 선택할 수 있도록 동의 화면을 제공합니다.

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

  • ADXConfiguration에서 GdprType을 POPUP_LOCATION로 설정하시면, 사용자의 접속 국가에 따라 EU 사용자는 GDPR 동의 Consent UI를 통해 동의 여부를 결정할 수 있습니다.

  • GdprType을 POPUP_DEBUG로 설정 시 접속 국가와 상관없이 Consent UI를 확인하실 수 있습니다.

(주의사항) POPUP_LOCATION 또는POPUP_DEBUG 의 경우 initiailizeContext 값으로 Activity 를 넣어주셔야 합니다. 그렇지 않은 경우 정상적으로 초기화되지 않습니다.

// ADX 초기화 관련 설정
ADXConfiguration adxConfiguration = new ADXConfiguration.Builder()
                        .setAppId("<ADX_APP_ID>")
                        .setGdprType(ADXConfiguration.GdprType.POPUP_LOCATION)
                        .setTestDeviceIds(Arrays.asList("")) // UMP Test Device
                        .build();

ADXSdk.getInstance().initialize((Activity) this, adxConfiguration, new ADXSdk.OnInitializedListener() {
        @Override
        public void onCompleted(boolean result, ADXGDPR.ADXConsentState adxConsentState) {
                // 광고 초기화 완료
        }
});

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

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


2) 로그 출력에서 아래의 기기 ID를 확인합니다. 이 식별자 문자열을 ADXConfiguration 객체 생성 시 사용하는 setTestDeviceIds 파라미터에 입력하고, setGdprType 파라미터에는 POPUP_DEBUG를 입력하여 주십시오. Use new ConsentDebugSettings.Builder().addTestDeviceHashedId("33BE2250B43518CCDA7DE426D04EE231") to set this as a debug device.

Case 2. 직접 동의 여부 설정

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

  • EU 외 지역으로 동의 여부가 필요 없는 경우, ADXConfiguration에서 GdprType을 DIRECT_NOT_REQUIRED로 설정해주세요.

  • EU 지역으로 직접 동의 절차를 진행하시는 경우, 동의절차 결과에 따라 GdprType을 설정해주세요 .

    • 사용자가 개인정보 활용 및 수집 동의한 상태: DIRECT_CONFIRM

    • 사용자가 개인정보 활용 및 수집 거부한 상태: DIRECT_DENIED

// ADX 초기화 관련 설정
ADXConfiguration adxConfiguration = new ADXConfiguration.Builder()
                        .setAppId("<ADX_APP_ID>")
                        .setGdprType(ADXConfiguration.GdprType.DIRECT_CONFIRM)
                        .build();

ADXSdk.getInstance().initialize((Activity) this, adxConfiguration, new ADXSdk.OnInitializedListener() {
        @Override
        public void onCompleted(boolean result, ADXGDPR.ADXConsentState adxConsentState) {
                // 광고 초기화 완료
        }
});

2. Native Ad 초기화

동일한 Activity에서 초기화 함수와 Native Ad 함수를 호출하는 경우

초기화 함수를 호출하기 전에 AdxNativeAdFactoryinit()setAdxViewBinder() 를 초기화 함수보다 먼저 호출해야합니다. 초기화 함수 호출 후 OnInitializedListeneronCompleted 내에서 AdxNativeAdFactory.preloadAd()를 호출해야 합니다.

AdxNativeAdFactory.init(this);

AdxNativeAdFactory.setAdxViewBinder("<NATIVE_AD_UNIT_ID>", new AdxViewBinder.Builder(R.layout.layout_media_native_ad)
        .mediaViewContainerId(R.id.mediaContainerId)
        .iconImageId(R.id.adIconId)
        .titleId(R.id.titleId)
        .adChoiceContainerId(R.id.adChoicesContainerId)
        .callToActionId(R.id.callToActionId)
        .build());

Native Ad 구현 방법은 해당 페이지를 참고해주세요.

3. ConsentState

GDPR 동의 여부에 대해 4개의 상태값을 가집니다.

상태

설명

ADXConsentStateUnknown

동의 여부가 존재하지 않는 사용자로 호출 상태로 개인화 광고가 노출되지 않습니다.

ADXConsentStateNotRequired

동의 여부가 필요없는 지역 (EU 외 지역)

개인화 광고가 노출됩니다.

ADXConsentStateDenied

사용자가 개인정보 활용 및 수집을 거부한 상태

개인화 광고가 노출되지 않습니다.

ADXConsentStateConfirm

사용자가 개인정보 활용 및 수집을 동의한 상태

개인화 광고가 노출됩니다.

동의 여부를 확인/변경 하시는 경우 ADXGdprManager의 아래 함수를 사용하여 주시기 바랍니다.

// ADXGdprManager에 설정된 사용자의 동의 정보를 확인하실 수 있습니다.
ADXGdprManager.getResultGDPR(this);

// 직접 동의 여부를 변경합니다.
ADXGdprManager.saveResultGDPR(this, ADXConsentState);

4. Privacy Policy

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

ADXGdprManager.getPrivacyURL();

5. 디버깅 로그 활성화

QA 진행 시 연동 및 미디에이션 정상 동작 확인을 위해 초기화 함수를 호출하기 전에 아래와 같이 추가되어야 합니다.

ADXLogUtil.setLogEnable(true);

Last updated