SDK do Google UMP: como implementar o consentimento RGPD em jogos móveis Unity
Por que os jogos móveis precisam de um SDK de consentimento
Se o teu jogo exibe anúncios do AdMob, do Ad Manager ou de uma cascata mediada a jogadores no Espaço Económico Europeu ou no Reino Unido, és legalmente obrigado a obter consentimento válido antes de utilizar qualquer publicidade personalizada ou identificador de rastreamento. Um banner de cookies web não resolve isto — as aplicações móveis nativas não têm cookies, e o consentimento tem de chegar aos SDK de anúncios que correm dentro da tua compilação.
A resposta da Google é o SDK da User Messaging Platform (UMP), a camada de consentimento que acompanha o SDK do Google Mobile Ads. Apresenta um formulário de consentimento compatível com o IAB TCF, armazena as escolhas do jogador e expõe um sinal de consentimento que o AdMob e os parceiros de mediação leem automaticamente. Para um estúdio Unity, acertar neste fluxo faz a diferença entre um eCPM saudável e uma onda de penalizações por incumprimento de políticas.
O fluxo de consentimento, do início ao fim
A ordem correta das operações importa mais do que qualquer chamada de API específica. Em cada arranque da aplicação deves:
- Solicitar uma atualização da informação de consentimento. Isto diz ao UMP para verificar a região do jogador e se é necessário um formulário.
- Carregar e mostrar o formulário se for necessário. O UMP decide se o exibe com base na geografia e nas escolhas anteriores — nunca codifiques de forma fixa "este utilizador está na UE?".
- Aguardar que o formulário feche antes de inicializar o SDK do Mobile Ads.
- Inicializar os anúncios apenas depois de o consentimento ser recolhido, para que o primeiro pedido de anúncio já transporte o sinal correto.
Inicializar o SDK de anúncios antes de o formulário de consentimento retornar é o erro mais comum que vemos. Produz uma primeira impressão não personalizada ou não conforme e pode desencadear revisões automáticas de políticas.
Uma implementação mínima em Unity
Em C#, o esqueleto tem este aspeto:
var request = new ConsentRequestParameters();
ConsentInformation.Update(request, (FormError error) => {
ConsentForm.LoadAndShowConsentFormIfRequired((FormError err) => {
if (ConsentInformation.CanRequestAds()) InitializeAds();
});
});
A verificação CanRequestAds() é a tua barreira. Enquanto retornar true — seja porque o jogador consentiu ou porque está fora de uma região regulada — podes inicializar e pedir anúncios. Não guardes nada sobre a região em cache por tua conta; deixa que o UMP seja a única fonte de verdade.
Testar sem publicar na loja
Não consegues verificar um fluxo de consentimento a partir do teu escritório em, digamos, Istambul, a menos que simules um dispositivo do EEE. O UMP suporta uma definição de geografia de depuração e uma lista de IDs com hash de dispositivos de teste:
- Regista o ID com hash do teu dispositivo de teste nos parâmetros do pedido.
- Força a geografia de depuração para
EEApara que o formulário apareça. - Usa o método de reposição do SDK entre execuções para veres sempre a experiência do primeiro arranque.
Remove sempre as definições de depuração antes de uma compilação de produção. Enviar a todos os jogadores uma flag de depuração com o EEE forçado é um incidente real e embaraçoso.
Consentimento, mediação e as tuas receitas
Quando o consentimento se propaga corretamente, cada rede da tua stack de mediação — AdMob, Meta Audience Network, Unity Ads, AppLovin — recebe a string TCF e pode licitar por inventário personalizado onde for permitido. Quando falha, essas redes recorrem a anúncios não personalizados a uma fração do eCPM, e a tua cascata perde receita em silêncio. Trata a camada de consentimento como parte da tua stack de monetização, não como uma preocupação tardia de conformidade.
Onde o FlexyConsent encaixa
O UMP cobre a própria superfície da Google, mas a maioria dos editores sérios gere o consentimento em propriedades web, várias aplicações e tagging do lado do servidor ao mesmo tempo. O FlexyConsent dá-te um único registo de consentimento, sinais de TCF e do Google Consent Mode v2, e análises sobre as taxas de consentimento em todas as plataformas — para que a escolha que um jogador faz no teu jogo Unity e a escolha que um visitante faz no teu site de marketing vivam num único local auditável. A conformidade torna-se um painel, não um exercício de combate a incêndios.
Principais conclusões
- Recolhe o consentimento através do SDK do UMP antes de inicializar o SDK do Mobile Ads.
- Nunca codifiques de forma fixa a lógica da região — deixa o UMP decidir quando é necessário um formulário.
- Testa com geografia de depuração e IDs de teste com hash, e depois remove-os antes do lançamento.
- A propagação correta do consentimento protege o eCPM dos teus anúncios personalizados em toda a stack de mediação.