Requisitos da integração

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

1 Carregar o SDK do Playables

2 Notificação de jogo pronto

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

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

3 Pontuações do usuário

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

4 Salvamentos na nuvem

  • O jogo PRECISA chamar saveData para salvar o progresso quando os usuários tiverem feito um progresso material no jogo (por exemplo, uma mudança de nível) em que a mecânica do jogo 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. Esse recurso permite que os jogadores retomem 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 impede que o jogo substitua dados salvos anteriormente.
  • O jogo PRECISA ser capaz de usar dados salvos na nuvem de versões anteriores do jogo sem erros ou falhas.
  • O jogo DEVE usar os dados salvos 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. Um salvamento final de transferência é realizado quando um usuário sai do jogo, mas é o 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 do YouTube e o botão de desativar som usando isAudioEnabled e onAudioEnabledChange.
  • O jogo PRECISA respeitar o controle de volume no dispositivo.
  • O som do jogo NÃO PODE ser reproduzido inesperadamente.
  • Quando o som do YouTube estiver desativado, 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 som do YouTube não estiver desativado, os controles de áudio do jogo PODEM afetar a saída de áudio.
  • O jogo NÃO PODE mostrar um botão de desativar som geral no jogo. Permita que os usuários dependam dos recursos do YouTube para isso.
  • O jogo PODE ter controles de áudio granulares separados no jogo, como para música e efeitos sonoros, mas eles PRECISAM 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 do Playables oferece callbacks para recursos de pausa e retomada multiplataforma.

  • O jogo PRECISA pausar toda a execução depois que onPause for chamado e PRECISA retomar a execução somente quando onResume for chamado. A execução inclui todos os recursos do Playable, 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 onPause e onResume do SDK do Playables.
  • O jogo DEVE salvar o progresso do usuário quando onPause ocorrer.