Häufig gestellte Fragen

In diesem Dokument finden Sie Antworten auf häufig gestellte Fragen zu SDKs und zur Veröffentlichung von Google Play Games auf dem PC.

Monetarisierung

  1. Kann ich den Kaufvorgang auch ohne Backend-Server verwenden?

    Aus Sicherheitssicht wird die Verarbeitung ohne Backend-Server nicht empfohlen.

    Weitere Informationen finden Sie unter Prozess ohne Backend-Server.

  2. Sind bestehende API-basierte Zahlungssysteme nach der Integration des Google Play Games auf dem PC SDK zulässig?

    Alle Zahlungen müssen über das Google Play Games auf dem PC-SDK mit Google Play Billing abgewickelt werden. Sie können Ihre vorhandene API-basierte Zahlungsmethode nicht im selben Spiel verwenden.

  3. Wie können wir Käufe im Entwicklermodus nutzen?

    Käufe müssen im Entwicklermodus innerhalb von 3 Minuten abgewickelt werden, da sie ansonsten erstattet werden.

  4. Werden wiederkehrende Zahlungen oder Abos unterstützt?

    Nicht in naher Zukunft. Sie können uns jedoch gerne konkrete Anwendungsfälle nennen, die wir in unsere zukünftige Roadmap aufnehmen sollen.

  5. Was ist der Abrechnungsfehler in meinen Kaufanrufen?

    BillingError ist die Antwort auf das Zahlungsergebnis. LaunchPurchaseFlow wird sofort zurückgegeben, ohne zu blockieren. Sie müssen jedoch auf den Callback warten, um zu erfahren, wann der Vorgang abgeschlossen ist, und das Ergebnis zu erfassen.

  6. Wie kann ich die clientseitige Kaufbestätigung verwenden?

    Wir empfehlen, serverseitige Käufe und den entsprechenden Bestätigungsprozess zu verwenden. Wenn Käufe über Ihre Client-App verarbeitet werden sollen, muss Ihr Spiel auf einer Zulassungsliste stehen. Wenden Sie sich an Ihren Google-Partner, wenn Ihr Spiel Zugriff benötigt. Weitere Informationen finden Sie unter Prozess ohne Backend-Server.

  7. Welche API-Limits gelten für das Abrufen von Produktdetails?

    Die maximale Anzahl von Produkten, die in einem einzelnen Aufruf der QueryProductDetails API abgefragt werden können, beträgt 50. Wenn Sie dieses Limit überschreiten, müssen Sie die Anfrage in mehrere Aufrufe aufteilen.

  8. Welche Parameter sind erforderlich, wenn „Query Purchases“ oder „Launch Purchase Flow“ im Billing Client aufgerufen wird?

    Die Funktion akzeptiert QueryPurchasesContinuation, einen Funktions-Callback mit der Signatur std::function<void(QueryPurchasesResult)>. Der Callback übergibt das Ergebnis mit allen ProductPurchaseDetails an Sie. Diese Informationen sind in den SDK-Headerdateien in der Datei includes/billing/models.h verfügbar.

    Die resultierende launch_purchase_flow_result hat die Funktionen ok() und code(). Die Funktion ok() gibt zurück, ob der Flow erfolgreich war. Die Funktion code() gibt das BillingError-Enum (includes/billing/enums.h) zurück, das 10 mögliche Fehlerfälle hat, z. B. „Nutzer hat abgebrochen“ oder „Netzwerkfehler“.

  9. Wird eine benutzerdefinierte Bestellung für den Kaufvorgang beim Starten im Billing Client unterstützt?

    Im aktuellen SDK-Design ist es nicht möglich, eine eigene Nutzlast zu übergeben. Sie können jedoch eine beliebige Kombination aus obfuscated_account_id und obfuscated_profile_id angeben. Sie können keinen, nur einen oder beide Nachweise einreichen.

    Das Feld offer_token ist erforderlich und gibt das Kaufangebot an, das der Nutzer im Bezahlvorgang kaufen möchte. Derzeit hat jede Artikelnummer bei Google Play genau ein Angebot (z. B. ein Artikel für 10 $). In Zukunft wird das Google Play-Abrechnungsteam Unterstützung für mehrere Angebote anbieten.

    Damit Metadaten im Falle von Unterbrechungen des Kaufvorgangs zugeordnet werden, speichern Sie die Metadaten auf Ihrem Backend-Server, bevor Sie den Kaufdialog starten, und ordnen Sie sie der Konto-ID des Nutzers, der gekauften Artikelnummer und dem aktuellen Zeitstempel zu. Weitere Informationen finden Sie unter Kauf mit internen Daten verknüpfen.

  10. Ist ein Zeitüberschreitungsfehler vorgesehen, wenn ein Nutzer den Browser während eines Kaufvorgangs schließt, ohne zu bezahlen?

    Ja, das ist ein bekanntes Problem und das Verhalten ist im browserbasierten Ablauf so vorgesehen. Wir arbeiten aktiv an einer nahtlosen Kaufoption (WebView-basiert), mit der der Zahlungsvorgang im Spiel bleibt und das Problem mit dem Zeitlimit behoben wird.

  11. Welche Voraussetzungen müssen erfüllt sein, um von der Google-Abrechnung mit OAuth zur nativen Google-Abrechnung mit DLL zu wechseln?

    Spiele können weiterhin den OAuth-Log-in mit Google verwenden, um das angemeldete Konto zu verwalten. Google empfiehlt jedoch, die alten REST-Abrechnungs-APIs nicht mehr zu verwenden. Die Umstellung von den REST-Abrechnungs-APIs (mit OAuth2-Anmeldung) auf den SDK-Ablauf kann über ein Feature-Flag erfolgen. Beide können also für eine gewisse Zeit parallel genutzt werden, während das Spiel umgestellt wird.

  12. Wird der API-Aufruf „Launch Purchase Flow“ über einen Webbrowser verarbeitet?

    Ja, derzeit wird die Verarbeitung über einen Browser durchgeführt. Google plant, den gesamten Ablauf ohne Verlassen des Spiels über das SDK zu ermöglichen.

  13. Muss sich ein Nutzer für jedes Spiel separat anmelden, um einen Kauf zu tätigen?

    Das Vordergrundkonto in Google Play Games wird für jede Spielsitzung verwendet. Sie müssen sich also nicht noch einmal anmelden. Das Konto, das Sie in Google Play Games verwenden, wenn die Spielsitzung beginnt, ist das Konto, mit dem API-Aufrufe ausgegeben werden. Wenn Sie einen Kaufvorgang im Browser starten, müssen Sie angemeldet sein und dasselbe Konto wie für die Spielsitzung verwenden. Wenn der Nutzer mit einem anderen Konto angemeldet ist, wird er im Web-Ablauf aufgefordert, das Konto zu wechseln.

  14. Kann ein Spiel gleichzeitig das native SDK und Legacy-Zahlungssysteme unterstützen?

    Das Zahlungssystem basiert auf einem Dual-Flow-Modell, das von der Binärversion des Spiels abhängt. Nutzer mit alten Builds verwenden weiterhin den bisherigen Ablauf. Nutzer mit neuen Builds werden auf SDK-basierte Zahlungen umgestellt. Nutzer mit beiden Zahlungsabläufen sind während des Übergangszeitraums vorhanden.

Windows-App-Bundle

  1. Muss das Spielpaket zur Überprüfung eingereicht werden, wenn ein WAB über einen Drittanbieter-Launcher eingereicht wird?

    Sie können einfach Ihr Installationsprogramm einreichen. Sie müssen nicht das gesamte Spielepaket einreichen. Der Prüfer kann Ihr Spielepaket über das Installationsprogramm herunterladen.

  2. Gibt es Einschränkungen für die WAB-Dateigröße?

    Sie können WAB-Dateien mit einer Größe von bis zu 10 GB hochladen.

  3. Warum wird mein Spiel nicht installiert oder angezeigt, nachdem ich mein WAB hochgeladen habe?

    Wenn Ihr Spiel ohne eine bereits vorhandene PC-Version eingebunden wird („First-Time WAB“), wird es möglicherweise automatisch in den Status „Verwaltete Veröffentlichung“ versetzt. Das liegt daran, dass keine vorhandene Baseline aktualisiert werden kann. Damit das WAB vollständig veröffentlicht und das Spiel zur Installation verfügbar ist, müssen Sie die Google Play Console aufrufen und die erforderliche Veröffentlichungsaktion manuell ausführen (z. B. auf „Änderungen veröffentlichen“ klicken).

  4. Wie lade ich die WAB für interne Tests hoch?

    Geben Sie die Konten auf der Zulassungsliste für Google frei, damit Google sie für interne Tests aktivieren kann. Sobald Google die Liste erhalten hat, wird dafür gesorgt, dass die entsprechenden Personen in den Onboardingprozess einbezogen werden.

  5. Wo sollte das WAB-Paket hochgeladen werden?

    Sie können das WAB-Paket an dem in der ersten Frage genannten Ort hochladen. Sie können sie jedoch nicht manuell veröffentlichen. Sie müssen den Google-Backend-Mitarbeitern eine genaue UTC-Zeit (bis auf die Stunde genau) angeben. Google konfiguriert dann den Veröffentlichungszeitplan und sorgt dafür, dass er rechtzeitig veröffentlicht wird.

PC SDK

  1. Was sind die Unterschiede zwischen der Legacy-API und dem Google Play Games auf dem PC-SDK?

    • Unsere Legacy-API bietet nur Abrechnungsfunktionen.
    • Das PC SDK unterstützt den Google Desktop Service (GDS) und alle PC-Funktionen.
    • Mit dem PC SDK ist keine browserbasierte Google-Anmeldung erforderlich.
  2. Gibt es eine alternative Möglichkeit, das SDK zu initialisieren, indem das Spiel direkt über den Spiele-Launcher gestartet wird, ohne Google Play Games auf dem PC zu verwenden?

    Ihr Spiel muss über den Google Play Games auf dem PC-Client gestartet werden. Weitere Informationen finden Sie in diesem Entwicklerdokument.

  3. Unterstützt das native PC SDK Multibyte-Zeichen in der PEM-Zertifikatsdatei?

    Ja, das SDK unterstützt Multibyte-Zeichen für die Zertifizierung.

  4. Wie verarbeitet das SDK die Anmeldung in einem Google-Konto für mehrere Instanzen oder Konten?

    Jeder Spielstart in Google Play Games wird als „Spielsitzung“ behandelt und jeder „Spielsitzung“ kann ein Konto zugeordnet sein. Sie können unterschiedlich sein. Wenn Sie das Spiel also mit Konto A starten und dann zu Konto B wechseln und das Spiel neu starten, können beide gleichzeitig ausgeführt werden.

  5. Funktioniert die Play Install Referrer-Integration mit dem PC SDK?

    Das PC-SDK (25.5.409.0 und höher) unterstützt die Play Install Referrer API. Weitere Informationen finden Sie unter Play Install Referrer API.

Launcher

  1. Wenn ein Spieler einen Drittanbieter-Launcher anstelle des Google Play-Clients verwendet, wird sein Play Games-Dienste-Konto dann automatisch synchronisiert?

    Damit die SDK-Funktionen funktionieren, muss das Spiel direkt über den Google Play Games-Client gestartet werden. Wenn ein anderer Prozess, z. B. ein Installationsprogramm oder eine Launcher-Anwendung, das Spiel startet, muss dieser Prozess selbst über den Google Play Games-Client gestartet werden. Das Spiel muss alle vom Client empfangenen Parameter an den Clientprozess übergeben.

  2. Wie gehe ich mit der Initialisierung um, wenn Google Play Games einen Spiele-Launcher eines Drittanbieters startet?

    Sie müssen das SDK nicht direkt in Ihren Launcher einbinden. Sie müssen jedoch alle Befehlszeilenargumente, die der Launcher vom Google Play Games-Client empfängt, direkt an den gestarteten untergeordneten Prozess (die ausführbare Datei des Spiels) übergeben. Wenn die Initialisierung fehlschlägt (z. B. durch die Rückgabe von kActionRequiredShutdownClientProcess), müssen alle Prozesse, einschließlich des Launchers, beendet werden, damit Google Play Games versuchen kann, das Spiel automatisch wiederherzustellen und neu zu starten. Weitere Informationen finden Sie im Schritt 5 des Einrichtungsleitfadens.

  3. Wie kann ich Updates und Wartungsarbeiten an meinem Spiel und Launcher durchführen, nachdem sie in Produktion gegangen sind?

    Nachfolgende Updates und Wartungsarbeiten müssen über Ihren Launcher erfolgen. Der Google Play Games-Client unterstützt keine Updatefunktionen. Daher muss der Launcher sowohl das Spiel als auch sich selbst aktualisieren können.

Initialisierung

  1. Werden meine Google-Kontodetails synchronisiert, wenn ich ein Spiel über die Google Play Games App starte?

    Nachdem das Spiel über den Google Play Games-Client gestartet wurde, wird das Konto automatisch synchronisiert. Eine erneute Anmeldung über den Google-Anmeldeprozess ist nicht erforderlich.

  2. Ist es möglich, die Initialisierungsparameter mehrmals zu verwenden?

    Das ist möglich, solange der Google Play Games-Client ausgeführt wird und die Anmeldedaten gültig sind. In Szenarien wie dem im Leitfaden beschriebenen müssen jedoch alle vom Spiel gestarteten Prozesse beendet werden, wenn der Nutzer das Spiel schließt oder das Spiel aufgrund eines SDK-Initialisierungsfehlers wie kActionRequiredShutdownClientProcess beendet wird.

  3. Gibt es eine Möglichkeit, eine Verknüpfung zu erstellen, um das Spiel direkt zu öffnen?

    Sie können den folgenden URI verwenden, um das Spiel direkt zu öffnen:

    googleplaygames://launch/?pid=2&id=com.company.gamename

    Mit dem URI kann erkannt werden, ob der Google Play Games auf dem PC-Client geöffnet ist. Wenn der Client nicht geöffnet ist, wird der Google Play Spiele-Client geöffnet, bevor das Spiel oder der Launcher ausgeführt wird. Sie müssen das Spiel oder den Launcher so verwalten, dass nicht mehrere Instanzen gleichzeitig ausgeführt werden.

  4. Gibt es eine Möglichkeit, die Installation von Google Play Games auf dem PC ohne SDK zu überprüfen?

    Sie können den Installationsstatus von Google Play Games auf dem PC prüfen, ohne das SDK zu integrieren. Suchen Sie dazu nach dem folgenden Windows-Registrierungsschlüssel:

    HKEY_LOCAL_MACHINE\SOFTWARE\Google\Play Games Services

    Das Vorhandensein dieses Schlüssels weist darauf hin, dass die Google Play Games-Dienste (die zum Ausführen von Spielen auf dem PC erforderlich sind) auf dem Computer installiert sind. Wenn der Schlüssel fehlt, solltest du den Nutzer an die Installationsseite für Google Play Games auf dem PC weiterleiten, damit er den Client herunterladen und installieren kann.

Test

  1. Gibt es offene oder geschlossene Testumgebungen, die denen für Mobilgeräte ähneln?

    Eine spezielle End-to-End-Sandbox ist zwar nicht verfügbar, aber wir wissen, dass Entwickler eine produktionsähnliche Testumgebung benötigen. Demnächst wird eine stabilere Lösung angeboten.

  2. Wie kann ich neue Tester hinzufügen?

    Ihr Google-Ansprechpartner erstellt für jedes PC-Projekt eine E-Mail-Gruppe, in die die Google-Konten der Tester aufgenommen werden müssen. Nur Mitglieder dieser E-Mail-Gruppe sind berechtigt, die Testpakete in Google Play Games herunterzuladen.

Sonstiges

  1. Kann ich ein VPN verwenden?

    Entwicklern, die ihr Spiel in Regionen testen müssen, in denen Google Play Games auf dem PC nicht unterstützt wird, empfehlen wir, ein VPN zu verwenden, um eine IP-Adresse aus einer unterstützten Region zu erhalten.

    Achten Sie darauf, dass Sie den TUN-Modus für das VPN aktivieren. Eine Anleitung zum Aktivieren des TUN-Modus und zum Konfigurieren der Firewall finden Sie im Benutzerhandbuch des VPN-Anbieters.

    Nachdem der TUN-Modus aktiviert wurde, installieren Sie Google Play Games auf dem PC und den Emulator zu Testzwecken.

  2. Wie kann ich mit der Entwicklung für Google Play Games auf dem PC in Unity oder UE Editor beginnen?

  3. Wie verwende ich Registrierungsschlüssel richtig?

    Sie sollten Registrierungsschlüssel basierend auf der Stammstruktur erstellen. Je nach Zweck und Art der Daten können Sie die Stammzelle entweder auf HKEY_LOCAL_MACHINE oder HKEY_CURRENT_USER festlegen. Die HKEY_LOCAL_MACHINE-Hive wird in den Richtlinien als Beispiel verwendet.

  4. Welche Anforderungen gelten für die Überprüfung von PC-Paketen durch Google?

    PC-Pakete werden auf Malware gescannt. Danach testen Prüfer nur die Installation, den erfolgreichen Start und die Deinstallation des Spiels.

  5. Muss ich alle APIs einbinden?

    Andere APIs sind nicht erforderlich, bieten aber zusätzliche Vorteile. google::play::billing ist für In-App-Käufe und den Verkauf digitaler Inhalte erforderlich. google::play::install_referrer ist erforderlich, um Empfehlungsdaten zu erfassen. So können Sie nachvollziehen, über welche Traffic-Quellen die meisten Nutzer Ihre App herunterladen. google::play::games::integrity ist erforderlich, um Ihre App vor böswilligen Akteuren zu schützen. Dazu werden potenziell riskante Geräte und unbekannte Emulatoren erkannt.

  6. Warum werden einige Spielprozesse beendet, wenn der Google Play Games-Client geschlossen wird, andere jedoch nicht?

    Google hat keine Kontrolle über die untergeordneten Prozesse oder Prozesse des laufenden Spiels. Das Verhalten hängt davon ab, ob es sich um ein emuliertes Android-Spiel oder ein natives PC-Spiel handelt. Emulierte Spiele werden in einer eigenen Umgebung installiert. Ihr Verhalten hängt daher weitgehend von der Initialisierung und dem Herunterfahren des Emulators ab.

  7. Sollte ich die Deinstallationsfunktion von Google Play Games oder ein benutzerdefiniertes Deinstallationsprogramm verwenden?

    Google empfiehlt, Google Play Games zu deinstallieren.

Weitere Unterstützung

Wenn Sie weitere Hilfe benötigen, die in diesen FAQs nicht behandelt wird, wenden Sie sich bitte an google-play-games-pc@google.com.