Requisitos da integração

Esta seção aborda a integração entre o jogo e o SDK do YouTube Playables.

1. Carregar o SDK do Playable

2 Notificação de jogo pronto

  • O jogo PRECISA chamar firstFrameReady quando estiver renderizando uma tela de carregamento ou tela de apresentação que informe explicitamente ao usuário que o processo de carregamento está em andamento.
  • O jogo PRECISA chamar gameReady e PRECISA chamar gameReady somente quando o jogo estiver pronto para a interação do usuário (por exemplo, menu principal ou jogo pronto para jogar).
  • O jogo NÃO PODE chamar gameReady enquanto ainda houver elementos não interativos sendo mostrados ao usuário (por exemplo, telas de apresentação ou de carregamento).

O YouTube não remove o "spinner de carregamento" até que essa API seja chamada.

3 Pontuações do usuário

  • O jogo MAY usa sendScore para enviar a pontuação do usuário.
  • Se o jogo usar sendScore para enviar pontuações, ele PRECISA obedecer à especificação sendScore e PRECISA garantir que a melhor pontuação enviada corresponda à melhor pontuação no salvamento do jogo.

4 Salvar na nuvem

  • O jogo PRECISA chamar saveData para salvar o progresso quando os usuários tiverem feito um progresso significativo no jogo (por exemplo, uma mudança de nível) em que a mecânica leva o usuário a acreditar que o progresso foi salvo.
  • O jogo NÃO PODE usar nenhum outro mecanismo para salvar o progresso do usuário. Com esse recurso, os jogadores podem retomar o jogo mais tarde.
  • O jogo PRECISA aguardar loadData antes de chamar saveData. Se saveData for chamado antes que loadData seja concluído, a solicitação será rejeitada. Isso evita que o jogo substitua dados salvos anteriormente.
  • O jogo PRECISA conseguir usar dados de salvamento na nuvem de versões anteriores do jogo sem erros ou falhas.
  • O jogo DEVE usar os dados de salvamento na nuvem para manter o progresso do usuário em todas as versões do jogo em que o usuário espera que os dados sejam usados.
  • Os jogos DEVEM salvar automaticamente o progresso do usuário em marcos importantes do jogo para evitar a perda de dados. Uma descarga final é realizada quando um usuário sai do jogo, mas é de melhor esforço e só pode salvar até 64 KiB de conteúdo de comprimento.

5 Ativar/desativar som

  • O jogo PRECISA respeitar a configuração de áudio do sistema e o botão de desativar microfone.
  • O jogo PRECISA respeitar a configuração de áudio e o botão de desativar microfone do YouTube usando isAudioEnabled e onAudioEnabledChange.
  • O jogo PRECISA respeitar o controle de volume do dispositivo.
  • O som do jogo NÃO PODE ser reproduzido inesperadamente.
  • Quando o mudo do YouTube está ativado, o áudio NÃO PODE ser reproduzido, e os controles de áudio do jogo NÃO PODEM afetar a saída de áudio.
  • Quando o mudo do YouTube não está definido, os controles de áudio do jogo PODEM afetar a saída de áudio.
  • O jogo NÃO PODE mostrar um botão de desativar microfone geral no próprio jogo. Os usuários precisam usar os recursos do YouTube para isso.
  • O jogo PODE ter controles de áudio granulares separados, como para música e efeitos sonoros, mas PRECISA seguir todos os outros requisitos de controle de áudio.

Diferentes configurações de áudio para plano de fundo, efeitos sonoros e diálogos

6 Pausar e retomar

O SDK Playables oferece callbacks para recursos de pausa e retomada multiplataforma.

  • O jogo PRECISA pausar toda a execução depois que onPause é chamado e PRECISA retomar a execução somente quando onResume é chamado. A execução inclui todos os recursos jogáveis, como loop de jogo, música, interações, chamadas de rede e renderização.
  • O jogo NÃO PODE usar a API Page Visibility da Web ou APIs da Web semelhantes e PRECISA usar apenas o SDK Playables onPause e onResume.
  • O jogo DEVE salvar o progresso do usuário quando onPause ocorrer.