Intégrer le SDK Google Play Jeux pour PC à Unity

Ce guide fournit des instructions détaillées pour intégrer le SDK Google Play Jeux pour PC à votre projet Unity.

Étape 1 : Téléchargez le SDK

Téléchargez la dernière version du package Unity à l'aide du lien de téléchargement.

Télécharger : SDK Unity Play Jeux pour PCUnity

Étape 2 : Importez le package

Le SDK est distribué sous forme de fichier tar compatible avec Unity Package Manager (UPM). Pour en savoir plus, consultez Installer un package UPM à partir d'un fichier tar local

Étape 3 : Configurez les paramètres de compilation

Pour vérifier que les bibliothèques natives se chargent correctement, vous devez configurer votre projet pour qu'il utilise le backend de script IL2CPP et qu'il cible l'architecture appropriée.

  1. Créez un profil de compilation avec Windows comme plate-forme.

  2. Sélectionnez les paramètres de la plate-forme en tant que Windows. Pour l'architecture, utilisez les options suivantes :

    • Intel 64 bits (recommandé)
    • Intel 32 bits

    Remarque : La plate-forme Google Play Jeux pour PC s'exécute dans un environnement 64 bits. Vous pouvez compiler votre jeu en 32 bits (x86) ou en 64 bits (x64).

  3. Définissez Scripting Backend (Backend de script) sur IL2CPP. Pour en savoir plus, consultez Compiler un projet avec IL2CPP.

    • Définissez Api Compatibility Level (Niveau de compatibilité de l'API) sur .NET Standard 2.0 (ou .NET Framework).

Étape 4 : Créez le fichier manifeste de l'application

Avant de pouvoir utiliser le SDK dans votre jeu, vous devez associer l'exécutable de votre jeu au nom de 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.

Remarque : Il s'agit d'une étape manuelle obligatoire.

  1. Pour compiler le fichier exécutable de votre jeu, sélectionnez File > Build and Run (Fichier > Compiler et exécuter) ou cliquez sur Ctrl+B.
  2. Ouvrez un éditeur de texte et créez un fichier nommé manifest.xml.
  3. Copiez le code XML suivant et collez-le dans le fichier :

    <?xml version="1.0" encoding="utf-8"?>
    <?Manifest version="1">
       <?Application>
         <?PackageName>com.example.package<?/PackageName>
       <?/Application>
    <?/Manifest>

  4. Enregistrez le fichier sous le nom manifest.xml.

  5. Déplacez ce fichier dans le même dossier que le fichier exécutable de votre jeu compilé.

    Exemple : Si votre jeu se trouve dans Builds/MyGame.exe, le fichier manifeste doit se trouver dans Builds/manifest.xml.

Remarque : Si vous souhaitez utiliser le SDK pour PC lors du développement dans l'éditeur Unity sans avoir à signer numériquement l'exécutable de votre jeu ni à le lancer depuis Google Play Jeux. Pour connaître les étapes de configuration supplémentaires du fichier manifeste, consultez le guide de configuration du mode développeur.

Étape 5 : Initialisez le SDK

Vous devez initialiser le SDK avant d'accéder à des fonctionnalités telles que la facturation ou l'intégrité. Utilisez PlayPcSdkFactory pour créer le gestionnaire d'initialisation et démarrer la connexion.

Créez un script C#, par exemple SdkInitialization.cs, et ajoutez le code suivant :

using UnityEngine;
using System;
using System.Threading.Tasks;
// Import the SDK namespaces
using PlayPcSdkManaged.Initialization;
using PlayPcSdkManaged.Unity;

public class GooglePlayPCSDKInit : MonoBehaviour
{
    // Prevent double-initialization if this script is reloaded
    private static bool _isInitialized = false;

    private void Start()
    {
        // Use the "Safe Runner" pattern to fire the async method
        _ = InitializeSdkAsync();
    }

    private async Task InitializeSdkAsync()
    {
        if (_isInitialized)
        {
            Debug.LogWarning("Google Play PC SDK is already initialized. Skipping.");
            return;
        }

        try
        {
            Debug.Log("Initializing Google Play PC SDK...");

            // 1. Get the Unity-specific initialization handler from the factory
            var initHandler = PlayPcSdkFactory.InitializationHandler;

            // 2. Call InitializeAsync to start the connection
            var result = await GooglePlayInitialization.InitializeAsync(initHandler);

            // 3. Check the result
            if (result.IsOk)
            {
                _isInitialized = true;
                Debug.Log("<color=green>Google Play PC SDK Initialized Successfully!</color>");
                // You can now create BillingClient or IntegrityClient instances
            }
            else
            {
                Debug.LogError($"<color=red>Initialization Failed!</color>");
                Debug.LogError($"Error Code: {result.Code}");
                Debug.LogError($"Message: {result.ErrorMessage}");
            }
        }
        catch (Exception ex)
        {
            // Catch unexpected crashes or task failures
            Debug.LogError($"Exception during initialization: {ex.Message}");
            Debug.LogException(ex);
        }
    }
}

Associez ce script à un GameObject dans votre première scène. Lorsque vous exécutez le jeu, recherchez le message "SDK Initialized Successfully!" (SDK initialisé) dans la console.