메인 콘텐츠로 건너뛰기

개요

UMP(User Messaging Platform) SDK는 GDPR(일반 데이터 보호 규정) 및 CCPA(캘리포니아 소비자 개인정보 보호법) 준수를 위해 맞춤형 광고에 대한 사용자 동의를 관리합니다.
UMP 연동에는 adrop-ads-backfill 모듈이 필요합니다. 시작하기의 설치 가이드를 먼저 완료해주세요.

기본 사용법

Adrop 초기화 후 Consent Manager를 사용하여 사용자 동의를 요청합니다.
import io.adrop.ads.Adrop
import io.adrop.ads.consent.AdropConsentListener
import io.adrop.ads.consent.AdropConsentResult

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        // Adrop.initialize() 이후에 호출
        Adrop.consentManager?.requestConsentInfoUpdate(this, object : AdropConsentListener {
            override fun onConsentInfoUpdated(result: AdropConsentResult) {
                if (result.error != null) {
                    Log.e("Consent", "오류: ${result.error}")
                }
            }
        })
    }
}

동의 상태

Consent Manager는 다음 상태 중 하나를 반환합니다:
상태설명
UNKNOWN동의 상태가 아직 결정되지 않음
REQUIRED동의 필요 (팝업이 표시됨)
NOT_REQUIRED동의 불필요 (비GDPR 지역)
OBTAINED이미 동의 완료됨

디버그 설정 (테스트 모드)

개발 중에 GDPR/CCPA 동의 흐름을 테스트하세요:
import io.adrop.ads.consent.AdropConsentDebugGeography

if (BuildConfig.DEBUG) {
    // 동의 요청 전에 디버그 지역 설정
    Adrop.consentManager?.setDebugSettings(
        testDeviceHashedIds = listOf("YOUR_HASHED_DEVICE_ID"),  // Logcat에서 확인
        geography = AdropConsentDebugGeography.EEA  // GDPR 테스트
    )

    // 테스트를 위한 동의 상태 리셋
    Adrop.consentManager?.reset(this)
}

디버그 지역

지역설명
DISABLED실제 기기 위치 사용
EEAGDPR 테스트 (유럽 경제 지역)
REGULATED_US_STATECCPA 테스트 (캘리포니아 등)
OTHER규제가 없는 지역 테스트
디버그 설정은 개발 중에만 사용해야 합니다. 프로덕션 배포 전에 제거하거나 비활성화하세요.

모범 사례

조기 요청

SDK 초기화 직후, 앱 라이프사이클 초기에 동의를 요청하세요.

오류 처리

동의 오류를 적절히 처리하고 대체 동작을 제공하세요.

모든 시나리오 테스트

배포 전에 디버그 설정을 사용하여 모든 동의 시나리오를 테스트하세요.

사용자 선택 존중

동의를 얻거나 거부된 후에는 사용자의 선택을 존중하고 반복적으로 요청하지 마세요.

관련 문서