adBreak().

Assinatura da função:

adBreak(
   type: '<type>',                     // The type of this placement
   name: '<name>',                     // A descriptive name for this placement
   beforeAd: () => {},                 // Prepare for the ad. Mute and pause the game flow
   afterAd: () => {},                  // Resume the game and re-enable sound
   beforeReward: (showAdFn) => {},     // Show reward prompt (call showAdFn() if clicked)
   adDismissed: () => {},              // Player dismissed the ad before completion
   adViewed: () => {},                 // Ad was viewed and closed
   adBreakDone: (placementInfo) => {}, // Always called (if provided) even if an ad didn't show
);

Parâmetros adBreak()

Nome Tipo Descrição
Todos os tipos de canal
type string

É o tipo de posição. Valores:

  • 'preroll' antes do carregamento do jogo (antes da renderização da IU)
  • 'start' antes do início do jogo (após a renderização da IU)
  • 'pause', o jogador pausa o jogo.
  • O jogador 'next' navega para o próximo nível
  • 'browse': o jogador vê opções fora da jogabilidade
  • 'reward' um anúncio premiado
name string (OPCIONAL) um nome para esse posicionamento de anúncio específico no seu jogo. É um identificador interno e não é mostrado ao player. Nas versões futuras, esse identificador poderá ser usado para ativar outros recursos de otimização e geração de relatórios.

Recomendamos que você nomeie todos os seus canais.
beforeAd função (OPCIONAL) Chamado antes do anúncio ser exibido. O jogo deve pausar e desativar o som. Essas ações precisam ser feitas de maneira síncrona. O anúncio será exibido imediatamente após o término desse retorno de chamada.
afterAd função (OPCIONAL) Chamado após a conclusão do anúncio (por qualquer motivo). Para anúncios premiados, ela é chamada depois de adDismissed ou adViewed, dependendo das ações do jogador. Essa função deve ser usada para retomar o fluxo de jogos. Por exemplo, use para ativar o som e iniciar o próximo nível.
adBreakDone função (OPCIONAL) Sempre chamado como a última etapa de um adBreak(), mesmo que não haja anúncio. A função usa como argumento um objeto placementInfo definido da seguinte maneira:
{
    breakType: '<type>',
    breakName: '<name>',
    breakFormat: 'interstitial|reward',
    breakStatus:  'error|noAdPreloaded|...|viewed',
}
Consulte adBreakDone e placementInfo() para ver uma explicação detalhada do objeto de informações de posicionamento.
Somente as posições premiadas...
beforeReward função Chamado se um anúncio premiado estiver disponível. A função precisa ter um único argumento, showAdFn(), que precisa ser chamado para exibir o anúncio premiado.
adDismissed função Chamado apenas para anúncios premiados quando o player dispensa o anúncio. Ele só será chamado se o player dispensar o anúncio antes de ele ser concluído. Nesse caso, a recompensa não deve ser concedida.
adViewed função Chamado apenas para anúncios premiados quando o jogador conclui o anúncio e precisa receber o prêmio.

adBreakDone() and placementInfo

Se a API Ad Placement não tiver um anúncio a ser exibido, ela não chamará os vários callbacks antes/depois transmitidos. No entanto, se você fornecer um callback adBreakDone(), ele sempre será chamado, mesmo que um anúncio não seja exibido. Isso permite que você faça todo o trabalho que for necessário para a veiculação, como registrar mais análises sobre ela.

A função adBreakDone() usa como argumento um objeto placementInfo definido da seguinte maneira:

{
  breakType: '<type>',
  breakName: '<name>',
  breakFormat: 'interstitial|reward',
  breakStatus: 'notReady|timeout|error|noAdPreloaded|frequencyCapped|ignored|other|dismissed|viewed',
}

Em que os campos desse objeto têm a seguinte semântica:

  • breakType é o argumento de tipo transmitido para adBreak().
  • breakName é o argumento de nome transmitido para adBreak().
  • breakStatus é o status dessa posição e pode ser um dos seguintes valores:
breakStatus Motivo
'notReady' A API Ad Placement não foi inicializada
'timeout' O canal expirou porque a API Ad Placement levou muito tempo para responder.
'invalid' A veiculação era inválida e foi ignorada. Por exemplo, deve haver somente uma posição de anúncio precedente por carregamento de página, os anúncios precedentes subsequentes falham com esse status
'error' Ocorreu um erro de JavaScript em um callback
'noAdPreloaded' Um anúncio ainda não foi pré-carregado, então a posição foi pulada
'frequencyCapped' Um anúncio não foi exibido porque o limite de frequência foi aplicado a esse canal.
'ignored' O usuário não clicou em um aviso de recompensa antes de chegar à próxima posição, ou seja, showAdFn() não foi chamado antes do próximo adBreak().
'other' O anúncio não foi mostrado por outro motivo. (por exemplo, O anúncio ainda estava sendo buscado ou um anúncio que estava armazenado em cache anteriormente foi descartado porque a tela foi redimensionada/girada.
'dismissed' O usuário dispensou um anúncio premiado antes de visualizá-lo até o fim
'viewed' O anúncio foi visualizado pelo usuário

Observação: adBreakDone() é sempre o último callback que adBreak() chama.

Se você usar afterAd() para retomar o jogo depois da exibição de um anúncio, adBreakDone() será chamado depois que o jogo for reiniciado. Para coisas como a geração de registros de análise, isso pode ser adequado, mas se você quiser fazer um trabalho adicional antes de o jogo ser reiniciado, mova a lógica para retomar o jogo de afterAd() para adBreakDone().