FrontEnd/Android

[Android] Admob 정책 위반 수정: Google 게재 광고를 완전히 또는 부분적으로 가리는 콘텐츠

Satisfaction 2023. 2. 13. 01:15

갑자기 정책 위반 관련 메일을 받고 수익창출이 아예 틀어막혀버렸다.

 

원인 파악과 의심되는 원인을 수정하는 과정을 소개한다.

(정확한 문제를 알려주지 않아 추정해서 수정해야 한다)

 

원인 파악 1: 다른 액티비티에 의해 전면 광고가 가려질 수 있음

현재 사용중인 광고는 전면 광고, 배너 광고, 네이티브 고급 광고이다.

 

배너 광고와 네이티브 고급 광고는 구조적으로 가려질 수 없었기에 전면 광고를 의심했다.

 

내 앱의 전면 광고 표시 로직을 요약하면 다음과 같다.

 

1. 액티비티를 새로 여는 동작이 감지됨

2. 액티비티를 여는 동작을 인터셉트하여 중지시키고, 전면 광고 데이터가 로딩 완료되었는지 체크

3-1. 예) 전면 광고를 표시하고 광고가 닫힌 후 액티비티 여는 동작 마저 실행 (3-1이 한번 실행된 이후에는 무조건 3-2로 분기)

3-2. 아니오) 액티비티 여는 동작 마저 실행

 

그런데, 액티비티를 여는 동작(1)이 짧은 시간 내에 여러 번 들어올 경우 (버튼 연타, 기기 렉 등)

첫 번째에서 3-1 동작이 실행된 후 다음 액티비티를 여는 동작부터 1-> 2-> 3-2로 진행되게 된다.

 

따라서 전면 광고가 표시된 후 추가로 액티비티가 여는 동작이 실행되어 전면 광고가 가려진다.

 

이는 3-1에서 전면 광고를 표시하는 메서드를 호출하고 나서 실제로 표시되기 전의 짧은 시간동안 다음 요청이 실행되기 때문에 발생된다.

 

따라서 3-1 동작이 완전히 처리되기 전에는 새로운 1번 요청이 들어오지 못하도록 변경했다.

 

원인 파악 2: 토스트 메시지가 전면 광고의 일부를 가림

 

이건좀...

 

매우 낮은 가능성+ 매우 작은 영역이지만 어쨌든 가리고있긴 하다.

 

이 광고는 테스트 전면 광고라 토스트 메시지가 직접 가리지는 않지만,

실제 전면 광고에서는 디스플레이에 꽉 차는 전면 광고가 나오기도 한다.

 

이게 맞는 것 같으면서도, 이런 식으로 운영한지가 4년이 넘어가는지라

왜 이제서야 태클을 거는지는 잘 모르겠다...

 

어쨌든 "전면 광고와 토스트 메시지를 동시에 표시" 동작을

"다이얼로그 표시 후 확인 버튼을 누르면 전면 광고 표시"로 변경했다.

 

그냥 아무것도 표시하지 않고 전면 광고를 띄우면 되잖아? 라고 질문할 수도 있지만

전면 광고의 닫기 버튼은 즉시 표시되지 않고 1~2초 후에 표시되는 경우가 있다는 걸 명심해야 한다.

 

실제로 운영 초기에는 광고에 닫기 버튼이 없다고 종종 리뷰에 1점이 박히기도 했다.

 

수정 후

아무튼 풀리긴 했다...

 

"Google 게재 광고를 완전히 또는 부분적으로 가리는 콘텐츠" 문제로 고통받는 개발자가 있다면 도움이 되었길 바란다...