Ten przewodnik zawiera szczegółowe instrukcje integracji pakietu SDK Gry Google Play na PC z projektem Unity.
Krok 1. Pobierz pakiet SDK
Pobierz najnowszą wersję pakietu Unity, korzystając z linku do pobierania.
Pobierz: pakiet SDK Unity do Gier Play na PC
Krok 2. Importowanie pakietu
Pakiet SDK jest rozpowszechniany jako plik tar zgodny z menedżerem pakietów Unity (UPM). Więcej informacji znajdziesz w artykule Instalowanie pakietu UPM z lokalnego pliku tar.
Krok 3. Skonfiguruj ustawienia kompilacji
Aby sprawdzić, czy biblioteki natywne wczytują się prawidłowo, musisz skonfigurować projekt tak, aby korzystał z IL2CPP jako zaplecza skryptów i był przeznaczony dla odpowiedniej architektury.
Utwórz profil kompilacji, w którym jako platformę wybierzesz Windows.
Wybierz ustawienia platformy, np. Windows. W przypadku architektury użyj tych opcji:
- Intel 64-bit (zalecane)
- Intel 32-bitowy
Uwaga: platforma Gier Google Play na PC działa w środowisku 64-bitowym. Możesz skompilować grę w wersji 32-bitowej (x86) lub 64-bitowej (x64).
Ustaw Scripting Backend (Backend skryptów) na IL2CPP. Więcej informacji znajdziesz w artykule Tworzenie projektu za pomocą IL2CPP.
- Ustaw Poziom zgodności interfejsu API na .NET Standard 2.0 (lub .NET Framework).
Krok 4. Utwórz plik manifestu aplikacji
Zanim użyjesz pakietu SDK w grze, musisz powiązać plik wykonywalny gry z nazwą pakietu w Google Play, którą zadeklarowano w Konsoli Play. Aby to zrobić, dodaj plik manifest.xml w tym samym katalogu co plik wykonywalny gry.
Uwaga: jest to krok, który należy wykonać ręcznie.
- Aby utworzyć plik wykonywalny gry, wybierz Plik > Kompiluj i uruchom lub kliknij
Ctrl+B. - Otwórz edytor tekstu i utwórz nowy plik o nazwie
manifest.xml. Skopiuj i wklej do pliku ten kod XML:
<?xml version="1.0" encoding="utf-8"?> <?Manifest version="1"> <?Application> <?PackageName>com.example.package<?/PackageName> <?/Application> <?/Manifest>
Zapisz plik jako
manifest.xml.Przenieś ten plik do tego samego folderu co plik wykonywalny utworzonej gry.
Przykład: jeśli gra znajduje się pod adresem
Builds/MyGame.exe, plik manifestu musi znajdować się pod adresemBuilds/manifest.xml.
Uwaga: jeśli chcesz używać pakietu SDK na PC podczas tworzenia w edytorze Unity bez konieczności podpisywania cyfrowo pliku wykonywalnego gry ani uruchamiania jej w Grach Play Google. Dodatkowe kroki konfiguracji pliku manifestu znajdziesz w przewodniku po konfiguracji trybu programisty.
Krok 5. Zainicjuj pakiet SDK
Zanim uzyskasz dostęp do jakichkolwiek funkcji, takich jak Płatności czy
Integralność, musisz zainicjować pakiet SDK. Użyj PlayPcSdkFactory, aby utworzyć procedurę obsługi inicjowania i rozpocząć połączenie.
Utwórz nowy skrypt C#, np. SdkInitialization.cs, i dodaj ten kod:
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); } } }
Dołącz ten skrypt do obiektu GameObject w pierwszej scenie. Po uruchomieniu gry sprawdź w konsoli, czy wyświetla się komunikat „SDK Initialized Successfully!” (Pakiet SDK został zainicjowany).