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 de adBreak()

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

O tipo da posição. Valores:

  • 'preroll' antes do carregamento do jogo (antes da renderização da interface)
  • 'start' antes do início do jogo (depois que a interface é renderizada)
  • 'pause' o player pausa o jogo
  • 'next' o jogador passa para o próximo nível
  • 'browse' o jogador explora opções fora da jogabilidade
  • 'reward' um anúncio premiado
name string (OPCIONAL) um nome para essa colocação de anúncio específica no seu jogo. É um identificador interno que não é mostrado ao jogador. Em versões futuras, esse identificador poderá ser usado para ativar outros recursos de relatórios e otimização.

Recomendamos que você nomeie todas as suas posições.
beforeAd função (OPCIONAL) Chamado antes da exibição do anúncio. O jogo vai pausar e silenciar o som. Essas ações precisam ser feitas de forma síncrona. O anúncio será exibido imediatamente após a conclusão desse callback.
afterAd função (OPCIONAL) Chamado depois que o anúncio termina (por qualquer motivo). Para anúncios premiados, ele é chamado após adDismissed ou adViewed, dependendo das ações do player. Essa função deve ser usada para retomar o fluxo do jogo. Por exemplo, use para ativar o som e iniciar a próxima fase.
adBreakDone função (OPCIONAL) Sempre chamado como a última etapa em um adBreak(), mesmo que nenhum anúncio tenha sido mostrado. A função usa como argumento um objeto placementInfo definido da seguinte forma:
{
    breakType: '<type>',
    breakName: '<name>',
    breakFormat: 'interstitial|reward',
    breakStatus:  'error|noAdPreloaded|...|viewed',
}
Consulte adBreakDone e placementInfo() para uma explicação detalhada do objeto de informações de posicionamento.
Somente posições premiadas...
beforeReward função Chamado se um anúncio premiado estiver disponível. A função precisa usar um único argumento, showAdFn(), que precisa ser chamado para mostrar o anúncio premiado.
adDismissed função Chamado apenas para anúncios premiados quando o player dispensa o anúncio. Ele só é chamado se o player dispensa o anúncio antes da conclusão. Nesse caso, a recompensa não deve ser concedida.
adViewed função Chamado apenas para anúncios premiados quando o player conclui o anúncio e deve receber o prêmio.

adBreakDone() and placementInfo

Se a API Ad Placement não tiver um anúncio para mostrar, ela não vai chamar os vários callbacks de antes/depois que você transmitir. No entanto, se você fornecer um callback adBreakDone() , ele sempre será chamado, mesmo que um anúncio não seja mostrado. Isso permite que você faça qualquer trabalho adicional necessário para a posição, como registrar outras análises sobre ela.

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

{
  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 ter um dos seguintes valores:
breakStatus Motivo
'notReady' A API Ad Placement não foi inicializada
'timeout' Um posicionamento atingiu o tempo limite porque a API Ad Placement demorou muito para responder.
'invalid' O canal era inválido e foi ignorado. Por exemplo, só pode haver um canal prerroll por carregamento de página. Os prerrolls subsequentes falham com esse status.
'error' Ocorreu um erro de JavaScript em um callback
'noAdPreloaded' Um anúncio ainda não havia sido pré-carregado, então essa posição foi ignorada
'frequencyCapped' Um anúncio não foi mostrado porque o limite de frequência foi aplicado a essa posição
'ignored' O usuário não clicou em um aviso de recompensa antes de chegar ao próximo posicionamento. 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 armazenado em cache anteriormente foi descartado porque a tela foi redimensionada/girada.)
'dismissed' O usuário dispensou um anúncio premiado antes de concluir a visualização
'viewed' O anúncio foi visualizado pelo usuário

Observação: adBreakDone() é sempre o último callback chamado por adBreak().

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