В этом руководстве представлены пошаговые инструкции по интеграции SDK Google Play Games для ПК в ваш проект Unity.
Шаг 1: Загрузите SDK.
Загрузите последнюю версию пакета Unity, используя ссылку для скачивания.
Скачать: Play Games PC Unity SDK
Шаг 2: Импортируйте пакет
SDK распространяется в виде tar-архива, совместимого с Unity Package Manager (UPM). Для получения дополнительной информации см. раздел «Установка пакета UPM из локального tar-архива».
Шаг 3: Настройка параметров сборки
Для проверки корректной загрузки нативных библиотек необходимо настроить проект на использование скриптового бэкенда IL2CPP и указать целевую архитектуру.
Создайте профиль сборки, указав в качестве платформы Windows .
Выберите в настройках платформы Windows. Для архитектуры используйте следующие параметры:
- Intel 64-бит (рекомендуется)
- Intel 32-бит
Примечание: Платформа Google Play Games для ПК работает в 64-битной среде. Вы можете собрать свою игру как для 32-битной (x86), так и для 64-битной (x64) архитектуры.
Установите в качестве бэкенда для написания скриптов IL2CPP . Для получения дополнительной информации см. раздел «Создание проекта с использованием IL2CPP» .
- Установите уровень совместимости API на .NET Standard 2.0 (или .NET Framework).
Шаг 4: Создайте манифест приложения.
Прежде чем использовать SDK в своей игре, необходимо связать исполняемый файл игры с именем пакета Play, которое вы указали в Play Console . Для этого добавьте файл manifest.xml в ту же директорию, что и исполняемый файл игры.
Примечание: Этот шаг необходимо выполнить вручную.
- Чтобы скомпилировать исполняемый файл игры, выберите Файл > Сборка и запуск или нажмите
Ctrl+B. - Откройте текстовый редактор и создайте новый файл с именем
manifest.xml. Скопируйте и вставьте следующий XML-код в файл:
<?xml version="1.0" encoding="utf-8"?> <?Manifest version="1"> <?Application> <?PackageName>com.example.package<?/PackageName> <?/Application> <?/Manifest>
Сохраните файл как
manifest.xml.Переместите этот файл в ту же папку, что и исполняемый файл вашей игры.
Пример: Если ваша игра находится в
Builds/MyGame.exe, то файл манифеста должен находиться вBuilds/manifest.xml.
Шаг 5: Инициализация SDK
Перед использованием любых функций, таких как выставление счетов или проверка целостности данных, необходимо инициализировать SDK. Используйте PlayPcSdkFactory для создания обработчика инициализации и начала подключения.
Создайте новый скрипт на C#, например, SdkInitialization.cs , и добавьте в него следующий код:
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); } } }
Прикрепите этот скрипт к игровому объекту в вашей первой сцене. При запуске игры проверьте консоль на наличие сообщения "SDK инициализирован успешно!".