PC-Kompatibilität und -Optimierung für Google Play Spiele auf dem PC

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-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:

  1. 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.

  2. 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>-Deklaration android: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:

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.

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:

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.