이 페이지에서는 MAX Terms & Privacy Policy Flow를 사용하여 이용약관 및 개인정보 처리방침에 대한 동의를 요청하는 방법을 설명합니다.
MAX SDK에 포함된 CMP flow를 사용하거나 자체 CMP flow를 연동할 수 있습니다. 자체 CMP flow를 연동하는 경우, 해당 flow가 완료된 후에 MAX SDK를 초기화해야 합니다.
iOS 17.4의 버그로 인해 App Tracking Transparency (ATT) 프롬프트가 사용자가 ATT를 거부한 것으로 조기에 잘못 판단할 수 있습니다. 이로 인해 사용자가 ATT에 동의할 수 있는 상황임에도 불구하고 AppLovin SDK가 LAT로 구성된 광고 네트워크로 Ad Units를 초기화하게 됩니다. AppLovin의 Unified Consent Flow를 사용하는 경우, 이 문제를 완화하기 위해 최신 iOS SDK(12.3.0+)로 업데이트하십시오.
AppLovin MAX SDK는 Google UMP와 함께 사용할 때 TCF v2를 준수합니다. MAX SDK는 동의 문자열 및 AC 문자열을 수신하여 TCF v2 consent에 설명된 대로 TCF v2 동의 문자열/상태를 미디에이션된 네트워크로 전달할 수 있습니다.
AppLovin의 자동화된 flow를 통해서든 다른 방식을 통해서든 Google UMP를 CMP로 사용하지 않는 경우, 선택한 CMP가 연동하는 미디에이션된 네트워크를 지원하는지 확인해야 합니다.
CMP를 사용하지 않는 경우, GDPR 및 기타 지역에서의 동의 및 기타 적용 가능한 플래그에 설명된 대로 AppLovin SDK의 바이너리 동의 플래그를 계속 설정해야 합니다.
MAX를 통해 Google 디맨드에 액세스하는 경우, 연동 프로세스를 시작하기 전에 Google CMP 요구 사항을 검토하는 것이 매우 중요합니다.
AppLovin MAX SDK는 Google UMP 연동을 자동화합니다. Google UMP를 수동으로 연동할 필요가 없습니다. 이는 옵트인 방식이며, AppLovin은 이 Google UMP 연동을 활성화하는 방법에 대한 지침을 제공합니다. 아래는 flow의 시각적 표현입니다.
다음 중 하나의 상황에서는 TCF 동의 상태가 false일 수 있습니다.
MAX 동의 flow가 Google GDPR 양식을 표시하려면 먼저 AdMob 대시보드에서 Google GDPR 메시지를 생성하고 게시해야 합니다. 방법은 다음과 같습니다.
닫기(동의하지 않음) 옵션은 체크하지 마십시오.
#ffffff)으로 설정합니다.#6e6e6e)으로 설정합니다.기본 GDPR 메시지에서 Google은 모든 광고 네트워크 파트너를 표시하지 않을 수 있습니다. 이러한 네트워크를 포함하지 않으면 광고 수익에 부정적인 영향을 미칠 수 있습니다. 모든 광고 파트너가 GDPR 메시지에 표시되도록 하려면 이 섹션의 단계를 따르십시오.
Google에 GDPR 인증을 받은 광고 파트너 목록은 Google AdMob 고객센터의 “GDPR 광고 파트너 관리”를 참조하십시오.
플러그인의 AppLovinMAX_UPL_Android.xml에 Google User Messaging Platform SDK에 대한 종속성을 추가합니다.
<AARImports>
⋮
<insertValue value="com.google.android.ump,user-messaging-platform,2.1.0" />
<insertNewline/>
⋮
</AARImports>
프로젝트의 Podfile에 Google User Messaging Platform SDK에 대한 종속성을 추가합니다.
target '«your-project-name»' do
pod 'Google-Mobile-Ads-SDK'
end
다음으로, 앱의 Info.plist에 String 타입의 NSUserTrackingUsageDescription이라는 새 키를 생성합니다.
이 문자열은 앱이 사용자 또는 기기를 추적하는 데이터를 사용할 수 있도록 권한을 요청하는 이유를 사용자에게 알리는 방법입니다.
AppLovin은 이 값을 “This uses device info for more personalized ads and content.”로 설정할 것을 권장합니다.
예를 들어, 다음과 같이 AppLovinMAX_UPL_IOS.xml을 업데이트할 수 있습니다.
<addElements tag="dict" once="true">
<key>NSUserTrackingUsageDescription</key>
<string>This uses device info for more personalized ads and content</string>
</addElements>
Android와 iOS 모두 SDK를 초기화하기 전에 속성을 설정하여 프로그래밍 방식으로 MAX Terms and Privacy Policy Flow를 활성화합니다. 아래 코드 샘플은 이를 수행하는 방법을 보여줍니다.
UAppLovinMAX::SetTermsAndPrivacyPolicyFlowEnabled(true);
UAppLovinMAX::SetPrivacyPolicyUrl(TEXT("«https://your-company-name.com/privacy/»"));
// Terms of Service URL은 선택 사항입니다.
UAppLovinMAX::SetTermsOfServiceUrl(TEXT("«https://your-company-name.com/terms/»"));
UAppLovinMAX::Initialize(TEXT("«your-SDK-key»"));
심사를 위해 App Store Connect에 앱을 제출할 때, iOS 14.5+에 대해서만 App Tracking Transparency 프레임워크 권한 요청을 활성화했음을 심사관에게 알려야 합니다. 이 작업은 심사 추가 정보(Review Notes) 섹션에서 수행하십시오. 이렇게 하지 않으면 Apple이 빌드를 거부할 수 있습니다.
SDK는 SDK를 초기화할 때 동의 flow를 표시합니다. 사용자가 flow를 완료하면 SDK가 초기화 완료 콜백을 호출합니다.
서드 파티 SDK(MMP 또는 분석 SDK 등)를 초기화하기 전에 사용자가 동의 flow를 마칠 때까지 기다려야 합니다. 이러한 이유로 초기화 완료 콜백에서 해당 SDK들을 초기화하십시오. 사용자가 동의 flow를 완료하기 전에 서드 파티 SDK를 초기화하면, 이러한 SDK가 관련 식별자에 액세스할 수 없어 측정, 보고 및 광고 수익에 실질적인 타격을 입게 됩니다.
초기화 콜백에서 MAX 미디에이션 네트워크 SDK를 초기화하지 마십시오. MAX는 이 초기화를 자동으로 수행합니다.
MMP 연동에서 사용자 ID를 설정하는 경우, AppLovin 사용자 ID를 설정하는 위치와 동일한 곳에 설정하십시오.
AppLovin은 GDPR 지역의 기존 사용자가 GDPR flow에 다시 진입할 수 있도록 허용할 것을 권장합니다.
일반적으로 사용자는 앱의 설정 섹션에서 기존 개인정보 보호 설정 관리 옵션을 통해 이를 수행할 수 있습니다.
사용자가 GDPR 지역에 있다고 판단되면 해당 설정 옵션을 조건부로 표시할 수 있습니다.
이를 위해 SDK API SdkConfiguration.ConsentFlowUserGeography를 사용하십시오.
ConsentFlowUserGeography가 EConsentFlowUserGeography::GDPR인 경우 사용자는 GDPR 지역에 있는 것입니다.
사용자가 기존 개인정보 보호 설정 관리(또는 이에 상응하는 옵션)를 클릭하면 UAppLovinMAX::ShowCmpForExistingUser()를 호출합니다.
이렇게 하면 사용자의 기존 동의 정보가 재설정됩니다.
UAppLovinMAX::OnCmpCompletedDelegate.AddLambda([this](const FSdkConfiguration& SdkConfiguration)
{
// AppLovin SDK가 초기화되었습니다. 광고 로드를 시작합니다.
}
UAppLovinMAX::ShowCmpForExistingUser();
GDPR 지역 외부에서 Google CMP를 테스트하려면 아래와 같이 디버그 사용자 지역을 설정하십시오.
UAppLovinMAX::SetConsentFlowDebugUserGeography(EConsentFlowUserGeography::GDPR);
이 flow는 신규 사용자에게만 표시됩니다. CMP 프롬프트를 완료한 후 flow를 테스트하려면 앱을 삭제하고 다시 설치해야 합니다.
MAX Mediation Debugger의 Privacy 섹션 아래에 있는 CMP (Consent Management Platform) 행에는 연동한 Google 인증 CMP SDK의 name이 표시됩니다. Google UMP SDK를 연동한 경우 name으로 “Google consent management solutions”가 표시됩니다.

CMP (Consent Management Platform) 행을 선택하면 IAB TCF 파라미터인 IABTCF_gdprApplies, IABTCF_TCString, IABTCF_AddtlConsent를 검사할 수 있습니다. 뒤의 두 파라미터의 경우, 행을 클릭하여 해당 값을 복사하거나 공유할 수 있습니다.

CMP CONFIGURATION 섹션에서 어떤 네트워크가 Google UMP 구성에 통합되어 있거나 누락되었는지 확인할 수 있습니다. 이는 MAX에서 사용할 수 있는 모든 네트워크의 전체 목록입니다. 애플리케이션에 연동하지 않은 네트워크는 무시해도 됩니다.
CMP flow에서 애플리케이션에 연동하는 네트워크를 나열해야 합니다. 해당 네트워크 중 누락된 네트워크가 있는지 확인하고 이 문제를 해결하려면 다음 단계를 따르십시오.
CMP flow에 모든 네트워크가 포함되었음을 확인할 때까지 이 단계를 반복합니다.


모든 네트워크의 동의 상태를 보려면 Mediation Debugger에서 Network Consent Statuses를 확장합니다. Mediation Debugger는 TC 문자열을 파싱하고 모든 네트워크의 동의 상태를 표시합니다. 또한 Google UMP가 생성하는 AC 문자열에서 파싱한 AppLovin 동의 상태도 표시합니다.
