안녕하세요.
iOS개발하는 리안입니다.
https://www.clien.net/service/board/cm_app/18177308?po=0&sk=id&sv=kirseia&groupCd=&pt=0CLIEN
이전에 이런글을 썼는데요, 약간의 문제가 있어서 해결하다 공유 드립니다.
먼저 중요한것부터 써보면...
EU + 영국 사용자의 경우에 GDPR 동의 거절할 경우 애드몹 광고 노출이 안됩니다.
# 광고 노출 안되는 이유
지난번 공유해 드린 이후에 광고 일치율이 쭉 떨어지는 현상이 있어서 살펴보니까
GDPR 거절하면 광고가 노출이 안되는 이슈가 있었습니다.
그래서 찾아봤더니...
https://support.google.com/admob/answer/9760862?hl=en&sjid=3990629379074041562-AP
여기에 보면
Consent policies: Personalized & Non-Personalized Ads
이 항목에
Lack of consent for Google to store and/or access information on a device (Purpose 1)
->
Publishers should not call Google’s ad tags.
If consent is missing for Google for Purpose 1 in the TC string, Google will drop the ad request and no ads will be served.
이렇게 되어있습니다.
대충 번역하면 - GDPR에 동의하지 않는 경우 광고를 위해 기기에 저장되는 정보를 저장할 수 없어서
애드몹 광고 요청을 드롭 시켜버린다고 되어있습니다. ㅠ
# 그러면 어떻게 해야하나?
다른 GDPR 동의를 받는 외부 업체의 경우(CMP - https://support.google.com/admob/answer/13554116#zippy=%2Cgoogle-인증-cmp) 는 기기에 일부 데이터가 저장되는 조건을 필수조건으로 동의 받아서 다음으로 넘어가게 하는 솔루션을 제공하고 있지만, 구글 애드몹 GDPR 메시지 폼은 해당 기능을 제공하지 않고 있습니다. (개인화된 광고든 개인화되지 않은 광고든 상관없이)
사용자가 알아서 해야 하죠.
크게 2가지 옵션이 있을거 같습니다.
1. 사용자가 GDPR 을 동의 했다. -> 광고 요청하면 됨.
2. 사용자가 GDPR 동의하지 않았다.
-> 광고없어도 괜찮은 서비스다 -> 그냥 진행하면 됨. (근데 이런 경우가 있을리가...?)
-> 광고가 필수인 서비스다.
-> 유료 결제를 하는 경우 사용할 수 있는 서비스인 경우
-> 유료 결제해야만 사용할 수 있어요. 상태로 만든다. 또는 GDPR 동의를 다시 받는다. (gdpr reset)
-> 유료 결제가 없는 경우..
-> GDPR 동의를 다시 받는다. (gdpr reset)
# 지난 번 글 오류 정정
지난번 쓴 글에는 애플 광고 식별자를 먼저 요청하고 -> GDPR 동의를 요청하는 식으로 구현해놨는데, 반대로 해야 한다고 하네요.
GDPR 요청을 먼저하고, 그 다음에 애플 광고 식별자를 요청해야 한다고 합니다.
# 정리
- 앱 실행
- 온보딩
- GDPR 동의 요청 (EU+영국 아닌 경우 그냥 넘어가면 됨)
- GDPR 동의
- 광고 식별자 요청 -> yes/no 상관없이 개인화/비개인화 광고 노출하면 됨. -> 메인 화면으로
- GDPR 거절
- 광고가 필수가 아닌 앱 -> 메인 화면으로
- 광고가 필수인 앱
- 광고 제거 가능한 앱 (유료) -> 구입 또는 복구 기능 제공 / GDPR 상태 리셋 버튼 제공
- 광고 제거 불가능한 앱 -> GDPR 상태 리셋 버튼 제공
이렇게 될거 같네요.
저는 일단은 '정리'한 내용으로 구현하기에는 시간이 없어서 올해 말까지만 하면 되니까
애드몹의 GDPR 메시지를 그냥 꺼버렸네요 -_-);
오류 있으면 알려주세요.
감사합니다.
// 참고
https://developers.google.com/admob/ios/privacy?hl=ko
https://support.google.com/admob/thread/223482060?sjid=3990629379074041562-AP
https://support.google.com/admob/answer/9760862?hl=en&sjid=3990629379074041562-AP
https://support.google.com/admob/answer/13554116#zippy=%2Cgoogle-인증-cmp
eu/영국 있다가 그 외 국가로 이주한 경우/반대의 경우를 위해 리셋 기능도 넣어놓는게 가이드이고, 1년? 정도인가 일정 기간 지나면 다시 gdpr 동의 절차도 띄우게 되어있으니까요. (이건 구글 gdpr 폼 쓰면 자동)
디자인까지도 다 하시는건가요? 대단하십니다!
도움이 되셨다니 다행이네요. 감사합니다.
https://developers.google.com/admob/ios/privacy?hl=ko
위의 코드대로 따라했더니, ATT 팝업(광고 식별자 요청 팝업)은 뜨는데, GDPR 폼은 화면에 안 나타나는데, ATT 팝업과 GDPR 팝업은 별개인가요?
애드몹 대쉬보드에서 GDPR과 IDFA 설정은 완료 했습니다. 그리고 테스트 목적으로 지역 설정까지 했습니다.
한가지 더 질문이 있습니다. 애드몹 대쉬보드 -> 개인 정보 보호 및 메시지에 들어가면, GDPR 폼 설정과 IDFA 폼 설정하는 기능도 있는데, 두 개 모두 활성화 시키고 예제코드 대로 로드하면, IDFA 설명 폼이 먼저 팝업되고, 이후 다시 폼 로드를 하면 GDPR 폼이 로드됩니다. 2개 다 활성화 시키고 사용하시나요? 2개 다 사용한다면 이 순서를 제어할 수 있는 방법이 있는지 궁금합니다. 만약 GDPR 폼 설정만 하셨다면, 개인적으로 만든 IDFA 폼을 작성하여, GDPR 를 팝업하고, 이후 IDFA 요청을 하셨는지 궁금합니다.
위의 링크에 있는 내용의 "사용자에게 표시되는 메시지" 부분의 설명대로, 동작을 하지 않아서 ..
테스트 해보니, Simulator와 실제 Real Device (iPhone)과 동작이 다르게 하였습니다...
Simulator는 설명대로 동작하였으나, 실제 기기에는 다르게 동작했습니다.
감사합니다.
VPN을 유럽으로 변경하고 하면 시뮬레이터와 같이 GDPR 먼저 동작하네요.
네 맞습니다. 저도 확인해보니 그렇게 동작했습니다. 그리고 GDPR 동의 화면에서 사용자가 거부하면 ATT Alert 다이얼로그 메시지도 유저에게 팝업되지 않습니다.
VPN 없이 실제 ios 디바이스에서 테스트 하는 방법도 있는데, 설정하기 번거로워서 그냥 VPN 사용해서 테스트하는게 편한 것 같습니다.