Le SDK Play Jeux pour PC vous permet d'accéder aux services Google Play pour créer et monétiser votre jeu sur PC. Vendez des contenus numériques à l'aide de la facturation Play, connectez-vous facilement avec Play Jeux et assurez-vous que vos utilisateurs disposent d'un droit d'accès valide à votre application avec Play Integrity.
Prêt à vous lancer ?
Prérequis
Créez une fiche d'application dans la Play Console et revendiquez un nom de package Play.
Téléchargez et installez Google Play Jeux pour PC, puis connectez-vous avec votre compte Google.
Étape 1 : Ajoutez le SDK à votre projet
Téléchargez le SDK C++ Play Jeux pour PC.
Copiez le dossier d'en-têtes d'API
includes/
dans la base de code de votre application.Copiez les fichiers redistribuables de
imports/
dans le projet de votre application.- Associez votre projet à
play_pc_sdk.lib
pour accéder au contenu deplay_pc_sdk.dll
.
- Associez votre projet à
Étape 2 : Ajoutez un fichier manifeste
Avant de pouvoir utiliser le SDK dans votre jeu, vous devez associer l'exécutable de votre jeu au nom du package Play que vous avez revendiqué dans la Play Console. Pour ce faire, ajoutez un fichier manifest.xml
dans le même répertoire que l'exécutable de votre jeu.
Exemple de contenu manifest.xml
:
<?xml version="1.0" encoding="utf-8"?>
<Manifest version="1">
<Application>
<PackageName>com.example.package</PackageName>
</Application>
</Manifest>
Exemple d'emplacement manifest.xml
:
C:\Program Files
└───Example Game
├───Game.exe
└───manifest.xml
Étape 3 : Signez numériquement votre jeu
Pour que votre jeu puisse utiliser le SDK, son exécutable doit être signé numériquement à l'aide d'une signature numérique Authenticode. Pour savoir comment signer un exécutable, consultez la documentation sur SignTool .
Étape 4 : Initialiser le SDK
Initialisez le SDK lors de la séquence de démarrage de votre jeu. Cette opération doit être effectuée automatiquement, sans nécessiter d'interaction de l'utilisateur. Il est recommandé de vérifier que l'initialisation a réussi avant d'afficher la fenêtre de votre jeu. Cela permet d'offrir la meilleure expérience utilisateur possible en détectant et en résolvant les erreurs dès que possible, et en évitant que la fenêtre de votre jeu n'apparaisse brièvement dans les cas où le processus de votre jeu doit se fermer.
Commencez à utiliser le SDK en appelant GooglePlayInitialize
pour initialiser l'API. Cela configurera l'état global, se connectera au SDK Runtime et vérifiera que l'application a été démarrée correctement. Cette méthode DOIT être appelée et le rappel de continuation doit se terminer avec InitializeResult::ok()
égal à true
avant que toute autre API puisse être utilisée.
// Initialize the SDK as part of the startup sequence of your application.
auto promise = std::make_shared<std::promise<InitializeResult>>();
GooglePlayInitialize(
[promise](InitializeResult result) {
promise->set_value(std::move(result));
});
auto initialize_result = promise->get_future().get();
if (initialize_result.ok()) {
// The SDK succeeded with initialization. Continue with the startup sequence
// of the game.
// ...
} else if (initialize_result.code() == InitializationError::kActionRequiredShutdownClientProcess) {
// The SDK failed to initialize and has requested that your game process exit
// as soon as possible.
exit(1);
} else {
// The SDK failed to initialize for an alternative reason. It is still
// generally recommended that you exit the game process as soon as possible,
// because it won't be possible to access any APIs in the SDK. Critical
// operations such as verifying the user owns a valid license to your game
// won't be possible.
// ...
}
Si l'initialisation échoue avec le code kActionRequiredShutdownClientProcess
, quittez le processus du jeu dès que possible. Le runtime du SDK tentera d'aider l'utilisateur sans que votre jeu n'ait besoin d'effectuer d'action supplémentaire. Par exemple, si l'utilisateur ne possède pas de licence valide pour le jeu, Google Play Jeux l'invite à en acheter une copie. Pour les autres erreurs, il est toujours recommandé de quitter le processus du jeu dès que possible, car il n'utilisera pas le SDK pour effectuer des opérations critiques telles que la vérification de la validité de la licence de l'utilisateur pour votre jeu.
Une réponse non positive peut indiquer l'une des conditions suivantes :
Le SDK Runtime n'est pas installé, ne s'exécute pas sur l'appareil ou est une ancienne version non compatible avec le SDK intégré à votre jeu.
L'exécution du SDK n'a pas pu valider l'identité de l'application du jeu. Cela peut être dû à un
manifest.xml
non valide ou à l'utilisation du SDK sans activer le mode développeur lors du développement. Sans cela, l'exécutable de votre jeu doit être signé numériquement avec le certificat numérique enregistré sous le nom de package Play.L'exécutable du jeu n'a pas été lancé via le client Google Play Jeux.
L'utilisateur actif dans Google Play Jeux ne possède pas de licence pour l'application.
Étape 5 : (Facultatif) Prise en charge de plusieurs processus de jeu
Si votre jeu utilise plusieurs processus et prévoit d'utiliser le SDK Play Jeux pour PC à partir d'un processus qui n'est pas directement lancé par Google Play Jeux pour PC, des étapes d'intégration supplémentaires sont requises :
Le processus lancé directement par Google Play Jeux pour PC doit vérifier que l'initialisation du SDK Play Jeux pour PC a réussi.
Cela permet d'offrir la meilleure expérience utilisateur en signalant les erreurs dès que possible. Notez que le processus enfant utilisant le SDK doit également effectuer l'initialisation en plus du processus lancé directement.
Pour utiliser le SDK Play Jeux sur PC dans un sous-processus, transmettez les paramètres de ligne de commande au sous-processus généré.
Exemple de transfert de paramètre de ligne de commande :
Processes hierarchy tree: GooglePlayGames.exe └───YourGameLauncher.exe --foo=abc --bar=123 └───YourGame.exe --foo=abc --bar=123
Dans cet exemple, nous voyons une hiérarchie de processus où Google Play Jeux pour PC (
GooglePlayGames.exe
) lance le jeu (YourGameLauncher.exe
) avec des exemples de paramètres (--foo=abc --bar=123
). Le jeu génère ensuite un processus enfant (YourGame.exe
) qui utilise le SDK Play Jeux pour PC. Pour ce faire, le processus du jeu lancé par Google Play Jeux pour PC transmet les paramètres de ligne de commande qui lui ont été fournis au processus enfant.Quittez tous les processus lorsque le jeu cesse de s'exécuter.
Lorsqu'un utilisateur ferme votre jeu ou que le jeu se ferme en raison d'un échec d'initialisation du SDK, tel que
kActionRequiredShutdownClientProcess
, fermez tous les processus que votre jeu a générés. Cela garantit que les nouvelles modifications, telles que le changement de compte actif, prendront effet la prochaine fois que votre jeu sera lancé par le client Google Play Jeux pour PC.
Étapes suivantes
Utilisez le SDK lorsque vous développez dans votre IDE :
- Activer le mode développeur
Ajoutez des fonctionnalités Google Play PC à votre application :
- Vendre des biens numériques avec Play Billing
- Mesurer votre marketing avec Play Install Referrer