Exigences concernant l'intégration

Cette section décrit l'intégration entre Playable et le YouTube Playables SDK.

1 Charger le SDK Playables

2 Notification de jeu prêt

  • Le jeu DOIT appeler firstFrameReady lorsque le jeu affiche un écran de chargement ou un écran de démarrage qui indique explicitement à l'utilisateur que le processus de chargement est en cours.
  • Le jeu DOIT appeler gameReady et NE DOIT l'appeler que lorsque le jeu est prêt pour l'interaction de l'utilisateur (par exemple, le menu principal ou le jeu est prêt à être joué).gameReady
  • Le jeu NE DOIT PAS appeler gameReady lorsque des éléments non interactifs sont toujours affichés à l'utilisateur (par exemple, des écrans de démarrage ou des écrans de chargement d'écran).

YouTube ne supprime le "spinner de chargement" que lorsque cette API est appelée.

3 Scores des utilisateurs

  • Le jeu PEUT utiliser sendScore pour envoyer le score de l'utilisateur.
  • Si le jeu utilise sendScore pour envoyer des scores, il DOIT respecter la spécification sendScore et DOIT s'assurer que le meilleur score envoyé correspond au meilleur score enregistré dans le jeu.

4 Enregistrements dans le cloud

  • Le jeu DOIT appeler saveData pour enregistrer la progression lorsque les utilisateurs ont progressé de manière significative dans le jeu (par exemple, un changement de niveau) et que les mécanismes du jeu amènent l'utilisateur à croire que sa progression est enregistrée.
  • Le jeu NE DOIT PAS utiliser d'autre mécanisme pour enregistrer la progression de l'utilisateur. Cette fonctionnalité permet aux joueurs de reprendre le jeu ultérieurement.
  • Le jeu DOIT attendre loadData avant d'appeler saveData. Si saveData est appelé avant que loadData ne se termine correctement, la requête est rejetée. Cela empêche le jeu d'écraser les données précédemment enregistrées.
  • Le jeu DOIT pouvoir utiliser les données d'enregistrement dans le cloud des versions précédentes du jeu sans erreurs ni plantages.
  • Le jeu DOIT utiliser les données d'enregistrement dans le cloud pour maintenir la progression de l'utilisateur dans toutes les versions du jeu où l'utilisateur s'attend à ce que ses données soient utilisées.
  • Les jeux DOIVENT enregistrer automatiquement la progression de l'utilisateur à des étapes importantes du jeu pour éviter toute perte de données. Un enregistrement final est effectué lorsqu'un utilisateur quitte le jeu, mais il s'agit d'un effort optimal qui ne peut enregistrer que jusqu'à 64 Kio de contenu de longueur.

5 Bouton pour activer/désactiver le son

  • Le jeu DOIT respecter le paramètre audio du système et le bouton de désactivation du son.
  • Le jeu DOIT respecter le paramètre audio et le bouton de désactivation du son de YouTube en utilisant isAudioEnabled et onAudioEnabledChange.
  • Le jeu DOIT respecter le contrôle du volume sur l'appareil.
  • Le son du jeu NE DOIT PAS être diffusé de manière inattendue.
  • Lorsque le son de YouTube est désactivé, l'audio NE DOIT PAS être diffusé et les commandes audio du jeu NE DOIVENT PAS affecter la sortie audio.
  • Lorsque le son de YouTube n'est pas désactivé, les commandes audio du jeu PEUVENT affecter la sortie audio.
  • Le jeu NE DOIT PAS afficher de bouton de désactivation du son global dans le jeu lui-même. Laissez les utilisateurs s'appuyer sur les fonctionnalités de YouTube pour cela.
  • Le jeu PEUT disposer de commandes audio granulaires distinctes dans le jeu, par exemple pour la musique et les effets sonores, mais il DOIT respecter toutes les autres exigences en matière de commandes audio.

Différents paramètres audio pour l'arrière-plan, les effets spéciaux et les dialogues

6 Mise en pause et reprise

Le SDK Playables fournit des rappels pour les fonctionnalités de mise en pause et de reprise multiplateformes.

  • Le jeu DOIT mettre en pause toute exécution après l'appel de onPause et DOIT reprendre l'exécution uniquement lorsque onResume est appelé. L'exécution inclut toutes les fonctionnalités Playable, telles que la boucle de jeu, la musique, les interactions, les appels réseau et le rendu.
  • Le jeu NE DOIT PAS utiliser l'API Web Page Visibility ni d'autres API Web similaires, et DOIT uniquement utiliser onPause et onResume du SDK Playables.
  • Le jeu DOIT enregistrer la progression de l'utilisateur lorsque onPause se produit.