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

Für Google Play Spiele auf dem PC sind Änderungen an der Kompatibilität und Optimierung des PCs an deinem Spiel erforderlich. Durch diese Änderungen wird sichergestellt, dass dein Spiel auf einem PC ausgeführt werden kann und die Nutzererfahrung für die Plattform optimiert ist.

Darüber hinaus gibt es bei 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 Kompatibilität und Optimierung für PCs vornehmen (mit Ausnahme der Unterstützung von x86-64), können Sie Ihr Spiel so einrichten, dass Google Play Spiele auf dem PC erkannt wird, und dann plattformspezifische Funktionen deaktivieren oder aktivieren. So kannst du dasselbe APK oder App Bundle für deine Android-Releases auf Mobilgeräten und PCs verwenden.

Hier eine Zusammenfassung der Anforderungen und Empfehlungen auf dieser Seite:

x86-64-ABI-Architektur einschließen

Für den Release-Prozess erforderlich

Alle in Ihrem Spiel enthaltenen Bibliotheken erfordern x86-64-ABI-kompatible Versionen, um eine optimale Leistung und Stabilität auf der Plattform zu gewährleisten.

Wenn es technisch nicht möglich ist, eine ausführbare 64-Bit-x86-Datei für Ihr Spiel zu versenden, müssen Sie sich an das Prüfteam wenden, um eine Ausnahme zu beantragen. Ihr Spiel kann mit einer Ausnahme keine vollständige Zertifizierung erreichen, kann aber als „spielbares“ Spiel in den Katalog aufgenommen werden.

Bibliothekskompilierung

Verwenden Sie beim Kompilieren Ihrer Bibliotheken nicht den Atom-Anweisungssatz, um eine optimale x86-64-Prozessorkompatibilität zu gewährleisten. Bei der Verwendung von gcc sollten Sie beispielsweise auf -march=atom verzichten und stattdessen -march=x86-64 verwenden.

Zielarchitektur in Unity

Einige Versionen von Unity 2019 und 2020 unterstützen die x86-64-Architektur nicht unter Android. Achten Sie darauf, dass Sie Unity 2019.4.31f1, 2020.3.19f1 oder höher verwenden.

Wenn Ihr Spiel eine kompatible Version der Unity-Spiele-Engine verwendet, gehen Sie so vor, um x86-64-Android-Ziele zu aktivieren:

  1. Rufen Sie Player Settings > Weitere Einstellungen > Konfiguration > Scripting-Back-End auf und wählen Sie im Drop-down-Menü IL2CPP aus, um das IL2CPP-Scripting-Back-End zu aktivieren.

  2. Aktivieren Sie x86-64-Android-Ziele für Ihre Version von Unity:

    • Unity 2018 und niedriger:Gehen Sie zu Player-Einstellungen > Weitere Einstellungen > Zielarchitektur und klicken Sie das Kästchen x86 an. Da Unity 2018 nur x86-Ziele unterstützt, können Sie keine x86-64-Ziele erstellen. Für diesen Build ist eine Ausnahme vom Prüfteam erforderlich. Bitte wende dich an deinen Google-Ansprechpartner, um eine x86-Ausnahme zu beantragen.

    • Unity 2019 Long Term Support (LTS)-Release und höher: Gehen Sie zu Player Settings > Other Settings > Target Architectures und aktivieren Sie x86-64 (ChromeOS).

Google Play Spiele auf dem PC erkennen

Sie können die Plattform von Google Play Spiele auf dem PC zur Laufzeit erkennen und plattformspezifische Funktionen in Ihrem Spiel aktivieren oder deaktivieren.

Suche nach der Systemfunktion com.google.android.play.feature.HPE_EXPERIENCE, um festzustellen, ob dein 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-Lebenszyklusereignisse verarbeiten

Es ist wichtig, das Ereignis onPause (c++) in der Umgebung von Google Play Spiele auf dem PC zu verarbeiten. Ihr Spiel ist sichtbar, wenn ein Spieler das Emulator-Overlay aktiviert. Wenn das onPause-Ereignis daher nicht überwacht wird, kann dies die Nutzerfreundlichkeit beeinträchtigen.

Benutzeroberfläche aktualisieren

Bestimmte UI-Elemente und Touch-Gesten sind für den PC nicht geeignet und sollten aktualisiert werden.

Erforderlich:

  • UI-Aktionen ersetzen, die zwei oder mehr Finger benötigen (Multi-Touch-Gesten). So sollten Sie beispielsweise die Auseinander- und Zusammenziehen der Finger und andere Multi-Touch-Gesten durch die entsprechende Maus- und Tastatureingabe ersetzen. Weitere Informationen zu Änderungen der Geräteeingabe finden Sie unter Unterstützung für die Eingabe.

Empfohlen:

  • Für den Nutzer sollte vollständiger Text „Klicken“ statt „Tippen“ angezeigt werden.
  • Scrollbare Listen sollten Bildlaufleisten enthalten.
  • Bereiche, in die Nutzer schwenken können, sollten entweder Bildlaufleisten oder eine andere Möglichkeit haben, um große Entfernungen schnell zu überwinden.
  • Keine klickbare Tastatur auf dem Bildschirm für die Texteingabe anzeigen
  • Alle Texteinträge müssen innerhalb der Textfeldgrenzen liegen.
  • Für Klicks auf sichtbare Elemente gilt Folgendes:
    • Sie können an einer beliebigen Stelle innerhalb der sichtbaren Grenzen des Elements an einer beliebigen Stelle klicken.
    • Klicks im Bereich außerhalb des sichtbaren Elements werden nicht akzeptiert.
  • Dialogfelder sollten eine sichtbare Schließen-Schaltfläche haben. Es wird kein Klick außerhalb der Dialogfeldgrenzen erkannt.

Die meisten Berechtigungsdialogfelder deaktivieren

Mit Ausnahme der Mikrofonberechtigung zeigt Google Play Spiele auf dem PC keine Berechtigungsdialogfelder an. Daher sollten Sie nicht versuchen, diese anzuzeigen oder Berechtigungen während der Laufzeit anzufordern. Wenn Sie bereits zuvor Berechtigungsdialogfelder angezeigt haben, sollten Sie Ihr Spiel aktualisieren, damit es nicht mehr auf PCs angezeigt wird.

Nicht unterstützte Android-Funktionen und -Berechtigungen

Für den Release-Prozess erforderlich

Einige gängige Hardwarefunktionen von Smartphones und Tablets sind auf PCs nicht verfügbar. Dazu gehören auch Hardwarefunktionen wie die Kamera oder die Position eines Players. Spiele, bei denen Funktionen fehlen, können nicht heruntergeladen und auf dem PC eines Spielers installiert werden. Anfragen nach fehlenden Funktionen auf einem PC schlagen automatisch fehl.

Sie können eine vollständige Liste der verfügbaren Funktionen anzeigen, indem 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 android:required="false" zur Deklaration <uses-feature> hinzufügen. Dies gilt nur für die Funktionen, die bereits in Ihrem App-Manifest deklariert sind.

  • Versuchen Sie nicht, fehlende Funktionen zur Laufzeit zu verwenden. Wenn Sie dasselbe APK sowohl für die Tracks für Mobilgeräte als auch für PCs verwenden, erkennen Sie die PC-Umgebung zur Laufzeit und vermeiden Sie die relevanten Codepfade.

  • Fordern Sie keine nicht unterstützten Android-Berechtigungen zur Laufzeit an. Wenn du dasselbe APK sowohl auf der Mobilgerät- als auch auf dem PC verwendest, erkenne die PC-Umgebung zur Laufzeit und vermeide die relevanten Codepfade. Du musst dein Manifest nicht aktualisieren.

Weitere Informationen zur Kompatibilität des App-Manifests finden Sie im Leitfaden zur Kompatibilität des Manifests der Chromebook-App.

Anforderungen an Funktionstests

Entferne diese Hardwarefunktionen, bevor du den ersten Test-Build an die Google Play Console sendest:

  • android.hardware.wifi
  • android.hardware.bluetooth
  • android.hardware.camera
  • android.hardware.location

Einige dieser Features 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 des Features android.hardware.wifi finden Sie unter Verbindungsstatus und Verbindungsmessung überwachen. Eine vollständige Liste der nicht unterstützten Funktionen findest du im Leitfaden zur Kompatibilität von App-Manifesten für Chromebooks.

Anforderungen an Qualitätstests

Diese häufig verwendeten Hardwarefunktionen sind nicht mit PCs kompatibel. Sie müssen sie daher vor der endgültigen 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 in Ihrem Spiel daher für Google Play Spiele auf dem PC deaktiviert werden:

  • 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 und nicht in einem Browser in der Umgebung von Google Play Spiele auf dem PC geladen. Das ist in den meisten Situationen ein ideales Erlebnis.

Google Play Spiele auf dem PC unterstützt WebView, um die Portierung zu erleichtern. Da dieser Browser in der Umgebung von Google Play Spiele 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 einen Browser-Intent aufrufen.

Nicht unterstützte Google Play Service APIs deaktivieren

Für den Release-Prozess erforderlich

Google Play Spiele auf dem PC liefert eine eigene Variante der Google Play-Dienste, die nur einen Teil der Google Play-Dienste APIs enthält. Sie müssen sicherstellen, dass Ihre Anwendung nicht stark von Modulen abhängt, die auf dem PC ausgelassen oder nicht unterstützt werden. Bedenken Sie, dass einige Module verfügbar sein können, ihre Funktionalität aber nicht immer unterstützt wird. Firebase Cloud Messaging funktioniert beispielsweise nicht, wenn Google Play Spiele auf dem PC geschlossen wird.

Unterstützte Module

Diese Module sind derzeit verfügbar und werden von Google Play Spiele auf dem PC unterstützt. Es sind außerdem Pläne für zusätzliche Funktionen geplant:

Eingeschränkte Unterstützung

Die folgenden Module sind teilweise funktionsfähig. Wir bemühen uns, sie bei Google Play Spiele auf dem PC zu unterstützen, können jedoch nicht garantieren, dass sie ordnungsgemäß 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

Für den Release-Prozess erforderlich

Sie dürfen diese Module nicht auf PCs verwenden, da sie in Google Play Spiele auf dem PC zu unerwartetem Verhalten führen können.

Begrenzten Speicher aktivieren

Für den Release-Prozess erforderlich

Dieser Abschnitt gilt, wenn Ihr Spiel in externen Speicher lesen oder schreibt. Als Alternative zum Lesen und Schreiben in den Speicher ist die Bereichserzwingung des Speichers erforderlich. Dadurch muss der Player nicht mehr nach diesen vertraulichen Berechtigungen gefragt werden:

  • android.permission.READ_EXTERNAL_STORAGE
  • android.permission.WRITE_EXTERNAL_STORAGE

Weitere Informationen zum begrenzten Speicher finden Sie unter:

Analytics

Alte Google Analytics-Produkte funktionieren in Google Play Spiele auf dem PC nicht. Wenn dies auf Ihre Spiele zutrifft, sollten Sie es zu Google Analytics 4 migrieren.

Dies sollte nur dann Auswirkungen auf Ihr Spiel haben, wenn Sie derzeit Google Analytics 360 verwenden. Wenn Sie das Firebase SDK verwenden, um Analyseereignisse in Ihrem Spiel zu verfolgen und Ihr Spiel als Property in der Google Analytics Console sehen, müssen Sie nichts weiter unternehmen.