Für Google Play Spiele auf dem PC müssen Sie Änderungen an der PC-Kompatibilität und Optimierung Ihres Spiels vornehmen. Durch diese Änderungen kann Ihr Spiel auf einem PC ausgeführt werden und die Nutzerfreundlichkeit wird für die Plattform optimiert.
Außerdem gelten für Google Play Spiele auf dem PC Anforderungen an Grafik, Geräteeingabe und geräteübergreifendes Spielen. Weitere Informationen finden Sie im Startleitfaden.
Wenn Sie Änderungen an der PC-Kompatibilität und -Optimierung vornehmen (außer der x86-64-Unterstützung), können Sie Ihr Spiel so einrichten, dass Google Play Spiele auf dem PC erkannt und dann platformspezifische Funktionen deaktiviert oder aktiviert werden. So können Sie dasselbe APK oder App-Bundle für Ihre Android-Mobilgeräte- und PC-Releases verwenden.
Hier eine Zusammenfassung der Anforderungen und Empfehlungen auf dieser Seite:
- x86-64 ABI einschließen (erforderlich)
- Google Play Spiele zur Laufzeit erkennen (empfohlen)
- Ereignis „onPause“ verarbeiten (empfohlen)
- UI-Elemente aktualisieren (erforderlich)
- Dialogfelder für Android-App-Berechtigungen deaktivieren (erforderlich)
- Nicht unterstützte Android-Funktionen und ‑Berechtigungen deaktivieren (erforderlich)
- WebViews durch Browser-Intents ersetzen (empfohlen)
- Nicht unterstützte APIs von Google Play-Diensten deaktivieren (erforderlich)
- Speicher mit Begrenzung aktivieren (erforderlich)
- Zu Google Analytics 4 migrieren (empfohlen)
X86-64-ABI-Architektur einschließen
Vom Release-Prozess gefordert
Alle in Ihrem Spiel enthaltenen Bibliotheken benötigen x86-64 ABI-kompatible Versionen, um die beste Leistung und Stabilität auf der Plattform zu gewährleisten.
Wenn es für Ihr Spiel technisch nicht möglich ist, eine 64-Bit-x86-Ausführbare Datei bereitzustellen, müssen Sie sich an das Prüfteam wenden, um eine Ausnahme zu beantragen. Ihr Spiel kann die Vollzertifizierung nicht mit einer Ausnahme erreichen, kann aber als „spielbar“ in den Katalog aufgenommen werden.
Bibliothekssammlung
Verwenden Sie beim Kompilieren Ihrer Bibliotheken nicht den Atom-Instruction-Set, um die Kompatibilität mit x86-64-Prozessoren zu maximieren. Wenn Sie beispielsweise gcc
verwenden, verwenden Sie anstelle von -march=atom
-march=x86-64
.
Zielarchitektur in Unity
Einige Versionen von Unity 2019 und 2020 unterstützen die x86-64-Architektur auf Android nicht. Sie benötigen Unity 2019.4.31f1, 2020.3.19f1 oder höher.
Wenn in Ihrem Spiel eine kompatible Version der Unity-Spiel-Engine verwendet wird, gehen Sie so vor, um x86-64-Android-Ziele zu aktivieren:
Gehen Sie zu Player Settings > Other Settings > Configuration > Scripting Backend und wählen Sie im Drop-down-Menü IL2CPP aus, um das IL2CPP-Scripting-Backend zu aktivieren.
Aktivieren Sie x86-64-Android-Ziele für Ihre Version von Unity:
Unity 2018 und älter:Klicken Sie auf Player Settings > Other Settings > Target Architecture (Player-Einstellungen > Sonstige Einstellungen > Zielarchitektur) und setzen Sie ein Häkchen bei x86. Da Unity 2018 nur x86-Ziele unterstützt, können Sie keine x86-64-Builds erstellen. Für diesen Build ist eine Ausnahmegenehmigung des Prüfteams erforderlich. Wenden Sie sich an Ihren Google-Ansprechpartner, um eine X86-Ausnahme anzufordern.
Unity 2019 LTS-Version und höher: Gehen Sie zu Player-Einstellungen > Andere Einstellungen > Zielarchitekturen und aktivieren Sie x86-64 (ChromeOS).
Google Play Spiele auf dem PC erkennen
Sie können die Plattform „Google Play Spiele auf dem PC“ zur Laufzeit erkennen und so platformspezifische Funktionen in Ihrem Spiel aktivieren oder deaktivieren.
Prüfen Sie, ob die Systemfunktion com.google.android.play.feature.HPE_EXPERIENCE
angezeigt wird, um festzustellen, ob Ihr Spiel auf der Plattform „Google Play Spiele auf dem PC“ ausgeführt wird:
Kotlin
var isPC = packageManager.hasSystemFeature("com.google.android.play.feature.HPE_EXPERIENCE")
Java
PackageManager pm = getPackageManager(); boolean isPC = pm.hasSystemFeature("com.google.android.play.feature.HPE_EXPERIENCE")
C#
var unityPlayerClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); var currentActivity = unityPlayerClass.GetStatic<AndroidJavaObject>("currentActivity"); var packageManager = currentActivity.Call<AndroidJavaObject>("getPackageManager"); var isPC = packageManager.Call<bool>("hasSystemFeature", "com.google.android.play.feature.HPE_EXPERIENCE");
Android-Lebenszyklus-Ereignisse verarbeiten
Es ist wichtig, das Ereignis onPause
(c++) in der Google Play Spiele auf dem PC-Umgebung zu verarbeiten. Ihr Spiel ist sichtbar, wenn ein Spieler das Emulator-Overlay aktiviert. Wenn Sie das onPause
-Ereignis nicht abhören, kann das zu einer schlechten Nutzererfahrung führen.
Benutzeroberfläche aktualisieren
Bestimmte UI-Elemente und Touch-Gesten sind auf dem PC nicht geeignet und sollten aktualisiert werden.
Erforderlich:
- Ersetzen Sie UI-Aktionen, für die zwei oder mehr Finger erforderlich sind (Multitouch-Gesten). So sollten Sie beispielsweise das Zoomen durch Zusammenziehen und andere Multitouch-Gesten durch die entsprechende Maus- und Tastatureingabe ersetzen. Weitere Informationen zu Änderungen bei der Geräteeingabe finden Sie unter Eingabeunterstützung.
Empfohlen:
- Der für Nutzer sichtbare Text sollte „Klicken“ statt „Tippen“ lauten.
- Scrollbare Listen sollten Bildlaufleisten haben.
- Bereiche, in denen Nutzer schwenken können, sollten entweder Bildlaufleisten oder eine andere Möglichkeit haben, große Entfernungen schnell zu überwinden.
- Zeigen Sie keine anklickbare Tastatur auf dem Bildschirm für die Texteingabe an.
- Alle Texteinträge sollten innerhalb des Textfelds bleiben.
- Klicks auf sichtbare Elemente sollten:
- Akzeptieren Sie ein Klicken an einer beliebigen Stelle innerhalb der sichtbaren Grenzen des Elements.
- Klicks außerhalb des sichtbaren Elements werden nicht akzeptiert.
- Dialogfelder sollten eine sichtbare Schaltfläche zum Schließen haben. Klicks außerhalb des Dialogfelds werden nicht erkannt.
Die meisten Berechtigungsdialogfelder deaktivieren
Mit Ausnahme der Berechtigungen für Mikrofon und Benachrichtigungen werden in Google Play Spiele auf dem PC keine Berechtigungsdialogfelder angezeigt. Sie sollten daher nicht versuchen, diese anzuzeigen oder Berechtigungen zur Laufzeit anzufordern. Wenn Sie bisher Berechtigungsdialogfelder angezeigt haben, sollten Sie Ihr Spiel so aktualisieren, dass diese auf PCs nicht mehr angezeigt werden.
Nicht unterstützte Android-Funktionen und ‑Berechtigungen
Vom Release-Prozess gefordert
Einige gängige Hardwarefunktionen auf Smartphones und Tablets sind auf einem PC nicht verfügbar. Dazu gehören Hardwarefunktionen wie die Kamera oder der Standort eines Spielers. Spiele, für die fehlende Funktionen erforderlich sind, können nicht auf den PC eines Spielers heruntergeladen und installiert werden. Anfragen zu fehlenden Funktionen auf einem PC schlagen automatisch fehl.
Eine vollständige Liste der verfügbaren Funktionen erhalten Sie, wenn Sie Folgendes eingeben:
adb shell pm list features
Damit Ihr Spiel mit PCs kompatibel ist, sind die folgenden Änderungen erforderlich:
Markieren Sie Funktionen in Ihrem App-Manifest als optional, indem Sie der
<uses-feature>
-Deklarationandroid:required="false"
hinzufügen. Dies gilt nur für Funktionen, die bereits in Ihrem App-Manifest deklariert wurden.Versuchen Sie nicht, fehlende Funktionen zur Laufzeit zu verwenden. Wenn Sie dieselbe APK sowohl für Ihre mobilen als auch für Ihre PC-Tracks verwenden, erkennen Sie die PC-Umgebung zur Laufzeit und vermeiden Sie die entsprechenden Codepfade.
Anfordern Sie keine nicht unterstützten Android-Berechtigungen zur Laufzeit. Wenn Sie dieselbe APK sowohl für Ihre mobilen als auch für Ihre PC-Tracks verwenden, erkennen Sie die PC-Umgebung zur Laufzeit und vermeiden Sie die entsprechenden Codepfade. Sie müssen Ihr Manifest nicht aktualisieren.
Weitere Informationen zur App-Manifest-Kompatibilität finden Sie im Leitfaden Kompatibilität des App-Manifests für Chromebooks.
Anforderungen an Funktionstests
Entfernen Sie diese Hardwarefunktionen, bevor Sie den ersten Test-Build in der Google Play Console einreichen:
android.hardware.wifi
android.hardware.bluetooth
android.hardware.camera
android.hardware.location
Einige dieser Funktionen werden beim Ausführen von pm list features
aus Kompatibilitätsgründen möglicherweise als unterstützt aufgeführt, sind aber nicht vollständig implementiert. Weitere Informationen zum Entfernen der Funktion android.hardware.wifi
finden Sie unter Verbindungsstatus und Verbindungsmessung überwachen. Eine vollständige Liste der nicht unterstützten Funktionen finden Sie im Leitfaden zur App-Manifest-Kompatibilität für Chromebooks.
Anforderungen an Qualitätstests
Diese häufig verwendeten Hardwarefunktionen sind nicht mit PCs kompatibel. Sie müssen sie daher vor der finalen Einreichung in der Google Play Console entfernen:
android.hardware.audio.pro
android.hardware.bluetooth
android.hardware.camera
android.hardware.consumerir
android.hardware.location
android.hardware.nfc
android.hardware.sensor.light
android.hardware.sensor.accelerometer
android.hardware.sensor.barometer
android.hardware.sensor.compass
android.hardware.sensor.gyroscope
android.hardware.sensor.proximity
android.hardware.telephony
android.hardware.touchscreen
android.hardware.usb.accessory
android.hardware.usb.host
android.hardware.wifi
android.software.midi
Nicht unterstützte Berechtigungen
Die folgenden häufig verwendeten Berechtigungen werden auf PCs nicht unterstützt. Sie müssen sie daher für Google Play Spiele auf dem PC deaktivieren:
android.permission.ACCESS_COARSE_LOCATION
android.permission.ACCESS_FINE_LOCATION
android.permission.ACCESS_WIFI_STATE
android.permission.BLUETOOTH
android.permission.CAMERA
android.permission.FOREGROUND_SERVICE
android.permission.GET_ACCOUNTS
android.permission.INSTALL_PACKAGES
android.permission.READ_CONTACTS
android.permission.READ_EXTERNAL_STORAGE
android.permission.READ_PHONE_STATE
android.permission.RECEIVE_BOOT_COMPLETED
android.permission.REQUEST_INSTALL_PACKAGES
android.permission.SYSTEM_ALERT_WINDOW
android.permission.USE_CREDENTIALS
android.permission.WRITE_EXTERNAL_STORAGE
android.permission.WRITE_SETTINGS
com.google.android.gms.permission.ACTIVITY_RECOGNITION
Externe Websites und WebViews
Ein Browser-Intent wird im nativen Webbrowser eines PCs geladen, nicht in der Google Play Spiele auf dem PC-Umgebung. Das ist in den meisten Fällen die ideale Lösung.
Zur Vereinfachung der Portierung unterstützt Google Play Spiele auf dem PC WebView. Da die Seite in der Google Play Spiele-Umgebung auf dem PC geöffnet wird, fehlt der typische Desktop-Browser. Wenn Sie bisher WebView
zum Teilen Ihrer Nutzungsbedingungen, Ihrer Datenschutzerklärung oder anderer ähnlicher Inhalte verwendet haben, sollten Sie stattdessen eine Browserabsicht aufrufen.
Nicht unterstützte APIs der Google Play-Dienste deaktivieren
Vom Release-Prozess gefordert
Google Play Spiele auf dem PC wird mit einer eigenen Variante der Google Play-Dienste ausgeliefert, die nur einen Teil der Google Play-Dienste-APIs enthält. Sie müssen prüfen, ob Ihre Anwendung nicht stark von Modulen abhängt, die auf dem PC weggelassen oder nicht unterstützt werden. Einige Module sind zwar verfügbar, ihre Funktionen werden aber nicht immer unterstützt. Firebase Cloud Messaging funktioniert beispielsweise nicht, wenn Google Play Spiele auf dem PC geschlossen ist.
Unterstützte Module
Diese Module sind derzeit verfügbar und werden von Google Play Spiele auf dem PC unterstützt. Weitere Funktionen werden bald unterstützt:
- Google Log-in (ohne Kontoübertragung, SmartLock, SMS-Bestätigung, Berechnung der Passwortkomplexität)
- Cronet
- Google Play Spiele-Dienste
- Tasks
- Vision
- Google Pay
Eingeschränkter Support
Die folgenden Module sind teilweise funktionsfähig. Wir werden uns bemühen, sie in Google Play Spiele auf dem PC zu unterstützen, können aber nicht garantieren, dass sie funktionieren.
- Google Cloud Messaging (Eingestellt, verwenden Sie Firebase Cloud Messaging)
- Firebase Authentication (Telefonnummer-Authentifizierung funktioniert nicht)
- Firebase Cloud Messaging
- Firebase Common Libraries
- Firebase ML
- Firebase Remote Config
- Firebase Analytics
Nicht unterstützt
Diese Module werden in Google Play Spiele auf dem PC nicht unterstützt, verursachen aber keine Probleme in Google Play Spiele auf dem PC, wenn sie fehlschlagen:
- Google Analytics (eingestellt, verwenden Sie Firebase Analytics)
- Google Cast
- Awareness API
- Drive (eingestellt, wird bald entfernt)
- FIDO
- Firebase Realtime Database
- Firestore
- Firebase A/B Testing
- Google Fit
- Address API
- Instant Apps API
- Standort API
- Google Maps SDK
- Nearby
- Panorama
- Orte
- Google+
- SafetyNet (veraltet; füllen Sie bitte das Antragsformular aus, um die bevorstehende Play Integrity API zu aktivieren)
- Google Tag Manager
- Wear OS
Fehlerhaft
Vom Release-Prozess gefordert
Sie dürfen diese Module nicht auf PCs verwenden, da sie zu unerwartetem Verhalten in Google Play Spiele auf dem PC führen können.
Speicher mit Begrenzung aktivieren
Vom Release-Prozess gefordert
Dieser Abschnitt gilt, wenn Ihr Spiel Daten aus dem externen Speicher liest oder darauf schreibt. Die Durchsetzung des Speicherbereichs ist erforderlich, da dies eine alternative Möglichkeit zum Lesen und Schreiben im Speicher ist. Dadurch musst du den Spieler nicht mehr um diese sensiblen Berechtigungen bitten:
android.permission.READ_EXTERNAL_STORAGE
android.permission.WRITE_EXTERNAL_STORAGE
Weitere Informationen zu Speichern mit Bereichsbeschränkung finden Sie unter:
Analysezwecke
Ältere Google Analytics-Produkte funktionieren in Google Play Spiele auf dem PC nicht. Wenn das auf Ihre Spiele zutrifft, sollten Sie sie zu Google Analytics 4 migrieren.
Dies sollte sich nur auf Ihr Spiel auswirken, wenn Sie derzeit Google Analytics 360 verwenden. Wenn Sie das Firebase SDK verwenden, um Analyseereignisse in Ihrem Spiel zu erfassen, und Ihr Spiel in der Google Analytics Console als Property angezeigt wird, müssen Sie nichts weiter unternehmen.