Mit dem Entwickleremulator von Google Play Spiele auf dem PC entwickeln

Der Entwickleremulator für Google Play Spiele auf dem PC ist ein entwicklerspezifischer Emulator für Google Play Spiele auf dem PC. Im Gegensatz zum Player können Sie hier eigene Pakete installieren und Fehler beheben. Außerdem können Sie verschiedene Spielerkonfigurationen wie das Seitenverhältnis, die Mausemulation und das Grafik-Back-End simulieren, damit Ihr Spiel in verschiedenen PC-Konfigurationen wie erwartet funktioniert.

Emulator starten

Nach der Installation haben Sie das Startmenüelement „Google Play Spiele-Emulator für Entwickler“ und eine Desktopverknüpfung zum Starten des Emulators. Der Emulator befindet sich weiterhin in Ihrer Taskleiste, wenn Sie das Fenster schließen.

Anmelden

Sie werden aufgefordert, sich in Ihrem Google-Konto anzumelden, wenn Sie den Emulator zum ersten Mal ausführen. Verwenden Sie dieselben Anmeldedaten, die Sie für die Entwicklung verwenden möchten.

Sie können sich abmelden, indem Sie mit der rechten Maustaste auf das Symbol in der Taskleiste klicken, Entwickleroptionen auswählen und dann Abmeldung erzwingen auswählen. In diesem Fall wird der Emulator sofort neu gestartet und Sie werden aufgefordert, sich noch einmal anzumelden.

Nach dem Start siehst du einen typischen Android-Startbildschirm. Klicks mit der linken Maustaste werden wie im Mausemulationsmodus direkt in Fingertipps umgewandelt. Spiele, die für die Entwicklung per Sideload übertragen wurden, werden in der Anwendungsliste angezeigt, zu der du gelangen kannst, indem du auf dem Desktop klickst und ihn nach oben ziehst. So wird auf einem Smartphone oder Tablet ein Wisch nach oben emuliert.

Zusätzlich zur Mausübersetzung bietet der Entwickleremulator für Google Play Spiele auf dem PC Tastenkombinationen zur Verbesserung der Navigation:

  • Strg + H: Startbildschirmtaste drücken
  • Strg + B: Schaltfläche „Zurück“ drücken
  • F11 oder Alt + Eingabetaste: Zwischen Vollbildmodus und Fenstermodus wechseln
  • Umschalttaste + Tabulatortaste: Overlay für Google Play Spiele auf dem PC öffnen, einschließlich der aktuellen Schlüsselzuordnungen für das Input SDK

Ein Spiel installieren

Der Entwickleremulator für Google Play Spiele auf dem PC verwendet zur Installation von Paketen die Android Debug Bridge (ADB).

ADB-Kompatibilität

Aktuelle Versionen von adb sind mit dem Entwickleremulator von Google Play Spiele auf dem PC kompatibel. Wenn Sie den Emulator installieren, wird unter C:\Program Files\Google\Play Games Developer Emulator\current\emulator außerdem eine kompatible Version installiert.

Damit Sie dieser Anleitung folgen können, sollte ADB in Ihrem $PATH verfügbar sein. Mit dem Befehl adb devices können Sie prüfen, ob adb richtig konfiguriert ist.

adb devices
List of devices attached
localhost:6520  device

Spiel installieren

  • Google Play Games for PC Emulator starten
  • Geben Sie in die Eingabeaufforderung adb devices ein. Sie sollten Folgendes sehen:

    adb devices
    List of devices attached
    localhost:6520 device
    
  • Fehlerbehebung:

    • Wenn Sie eine Fehlermeldung erhalten, prüfen Sie, ob Sie der Anleitung unter Adb-Kompatibilität gefolgt sind.
    • Wenn dir kein Gerät angezeigt wird, versuche noch einmal, die Verbindung über Port 6520 herzustellen:
    adb connect localhost:6520
    
  • Gib adb install path\to\your\game.apk ein, um dein Spiel zu installieren. Wenn du ein Android App Bundle (aab) generiert hast, lies die Anleitung für bundletool und verwende stattdessen bundletool install-apks.

  • Führen Sie Ihr Spiel auf eine der folgenden Arten aus:

    • Geben Sie adb shell monkey -p your.package.name 1 ein, um das Spiel auszuführen, und ersetzen Sie your.package.name durch den Paketnamen des Spiels.
    • Klicken Sie im Entwickleremulator für Google Play Spiele auf dem PC auf das Symbol, um Ihr Spiel auszuführen. Wie bei einem Android-Smartphone musst du auf dem Startbildschirm nach oben wischen, um die Liste der installierten Spiele zu sehen.

Fehler in einem Spiel beheben

Verwenden Sie die Android Debug Bridge (ADB) genau wie in jedem anderen Spiel auch für die Fehlerbehebung. Der Emulator wird als über localhost:6520 verbundenes Gerät angezeigt.

adb logcat funktioniert wie erwartet, ebenso wie Tools, mit denen die Logcat-Ausgabe verbessert oder gefiltert werden kann – einschließlich Android Studio.

Zusätzlich zu adb können Logs im Verzeichnis %LOCALAPPDATA%\Google\Play Games Developer Emulator\Logs aufgerufen werden. Am nützlichsten ist hier AndroidSerial.log, das alles darstellt, was adb logcat ab dem Start des Emulators wiedergeben würde.

Entwicklereinstellungen

Der Entwickleremulator für Google Play Spiele auf dem PC konzentriert sich auf die Effizienz der Entwickler und nicht auf die Endnutzererfahrung. Das bedeutet, dass Sie uneingeschränkten Zugriff auf das Android-System haben, einschließlich der Verwendung des standardmäßigen Android-Launchers statt der Google Play Spiele auf dem PC sowie der Steuerung von Funktionen, die andernfalls automatisch für Spieler aktiviert und deaktiviert werden.

Mauseingabe testen

Während der Entwicklung verwendet der Entwickleremulator für Google Play Spiele auf dem PC standardmäßig die Touchemulation, statt eine Mauseingabe direkt auszuführen. Sie können die direkte Mauseingabe aktivieren, indem Sie mit der rechten Maustaste auf das Symbol in der Taskleiste klicken, Entwickleroptionen und dann PC-Modus (KiwiMouse) auswählen.

Google Play Spiele auf dem PC bietet zwei Mausmodi: einen emulierten Modus, der Mausklicks in einmaliges Tippen umwandelt, und einen „PC-Modus“, in dem Mausaktionen nativ verarbeitet und Zeigeraufnahmen ausgeführt werden. Weitere Informationen zur Mauseingabe in Google Play Spiele auf dem PC finden Sie unter Mauseingabe einrichten.

Im Player-Client wird die Emulation deaktiviert, wenn du deinem Manifest Folgendes hinzufügst:

<manifest ...>
  <uses-feature
      android:name="android.hardware.type.pc"
      android:required="false" />
  ...
</manifest>

Dieses Funktions-Flag hat keine Auswirkungen in der Entwicklungsumgebung.

Seitenverhältnisse testen

Der Entwickleremulator wird mit einem Seitenverhältnis von 16:9 gestartet – im Gegensatz zum Player-Client, der sein Seitenverhältnis vom Hauptbildschirm ableitet. Wenn Sie mit der rechten Maustaste auf das Symbol in der Taskleiste klicken, Entwickleroptionen und dann eine Option im Bereich Anzeigeverhältnis auswählen, können Sie testen, wie das Spiel auf den Bildschirmen verschiedener Spieler aussieht.

Die bevorzugte Methode zum Konfigurieren des Seitenverhältnisses ist die Verwendung von android:minAspectRatio und android:maxAspectRatio.

Ein Spiel im Hochformat hat beispielsweise ein Seitenverhältnis von 9/16 oder 0.5625. Sie können also ein maximales Seitenverhältnis von 1 festlegen, damit Ihr Spiel nicht breiter als quadratisch wird:

<activity android:maxAspectRatio="1">
 ...
</activity>

Entsprechend wäre ein Spiel im Querformat 16/9 oder ungefähr 1.778. Sie sollten also ein minimales Seitenverhältnis von 1 festlegen, damit es nicht dünner als quadratisch wird:

<activity android:minAspectRatio="1">
 ...
</activity>

Zu testendes Element

Wenn Ihr Spiel in der Manifestdatei nur das Hochformat unterstützt, können Sie im Drop-down-Menü 9:16 (Porträt) auswählen, um zu sehen, wie es auf den PCs der Spieler aussieht. Andernfalls prüfen Sie, ob Ihr Spiel in Ihrem Manifest mit den breitesten und schmalsten Formaten im Querformat funktioniert, die Sie in Ihrem Manifest unterstützen. Denken Sie daran, dass 16:9 (Standard) (oder 9:16 (Hochformat), wenn Ihr Spiel nur im Hochformat erforderlich ist) verwendet wird.

Rendering-Back-Ends testen

Google Play Spiele auf dem PC verwendet ANGLE als Kompatibilitätsebene, damit OpenGL ES-Aufrufe vom Host-PC mit einem DirectX- oder Vulkan-Back-End korrekt verarbeitet werden. Der Emulator unterstützt Vulkan direkt, jedoch nicht auf DirectX. Diese Ebene konvertiert auch nur auf Mobilgeräten komprimierte Texturformate in PC-kompatible Texturformate. Wenn Sie mit der rechten Maustaste auf das Symbol in der Taskleiste klicken und Graphics Stack Override auswählen, können Sie entweder die Standardeinstellung Ihres Systems festlegen oder das Ein- und Ausschalten von Vulkan für Kompatibilitätstests erzwingen.

Zu testendes Element

Es gibt geringfügige Abweichungen bei den unterstützten Texturformaten und die Schritte, die erforderlich sind, um verschiedene mobile Funktionen auf dem Computer zu emulieren. Bei der Profilerstellung und Optimierung Ihres Spiels lohnt es sich möglicherweise, jedes Back-End zu überprüfen.

Profilerstellung für PC-Spiel

Da der Emulator dieselbe Technologie wie der private Client verwendet, eignet er sich gut für die Erstellung von Leistungsprofilen.

Perfetto ist ein Tool zur Leistungsanalyse auf Android-Geräten. So können Sie ein Perfetto-Trace erfassen und aufrufen:

  1. Starten Sie in einer PowerShell-Eingabeaufforderung mit adb ein Trace.

    adb shell perfetto --time 10s gfx wm sched --out /data/misc/perfetto-traces/example.trace
    
    1. Das Flag --time gibt die Dauer des zu erfassenden Trace an.In diesem Beispiel beträgt das Trace 10 Sekunden.
    2. Die Argumente nach dem Flag --time geben an, welche Ereignisse verfolgt werden sollen. In diesem Beispiel gibt gfx Grafiken, wm-Fensterverwaltung und sched-Prozessplanungsinformationen an. Dies sind allgemeine Flags für die Profilerstellung von Spielen. Es ist eine vollständige Referenz verfügbar.
    3. Das Flag --out gibt die Ausgabedatei an, die im nächsten Schritt aus dem Emulator auf den Hostcomputer geladen wird.
  2. Trace vom Host abrufen

    adb pull /data/misc/perfetto-traces/example.trace $HOME/Downloads/example.trace
    
  3. Öffnen Sie den Trace in der Perfetto-UI.

    1. Öffnen Sie ui.perfetto.dev.
    2. Wählen Sie links oben unter Navigation die Option Trace-Datei öffnen aus.
    3. Öffnen Sie die im vorherigen Schritt heruntergeladene Datei example.trace in Ihrem Verzeichnis Downloads/.
  4. Prüfen Sie den Trace in der Perfetto-UI. Ein paar Tipps:

    1. Jeder Prozess hat eine eigene Zeile, die erweitert werden kann, um alle Threads in diesem Prozess anzuzeigen. Wenn Sie die Profilerstellung für ein Spiel erstellen, befindet sich der Prozess wahrscheinlich in der ersten Zeile.
    2. Sie können heran- und herauszoomen, indem Sie Strg gedrückt halten und das Scrollrad verwenden.
    3. Bei Verwendung des sched-Ereignisses gibt es für jeden Thread eine Zeile, die angezeigt wird, wenn sein Status „Wird ausgeführt“, „Ausführbar“, „Ruhemodus“ oder „Blockiert“ ist.
    4. Wenn Sie ein Ereignis wie gfx aktivieren, sehen Sie die verschiedenen Grafikaufrufe, die von verschiedenen Threads ausgeführt werden. Sie können einzelne „Slices“ auswählen, um zu sehen, wie lange sie gedauert haben, oder Sie können eine Zeile entlang ziehen, sodass sich unten ein Abschnitt „Slices“ öffnet und Sie sehen, wie lange alle Segmente im ausgewählten Zeitfenster gedauert haben.

Grafikprofilerstellung

Es ist möglich, einige Grafikprofile mit RenderDoc zu erstellen.

  1. Legen Sie die Umgebungsvariable ANDROID_EMU_RENDERDOC auf einen nicht leeren String wie "1" fest.
  2. Legen Sie die Umgebungsvariable TMP auf %USERPROFILE%\AppData\LocalLow fest. Dadurch wird Renderdoc angewiesen, seine Protokolldateien in der Sandbox des Emulators an einem erreichbaren Ort zu speichern.

  3. Sie verwenden das Vulkan-Back-End. Wählen Sie Grafikeinstellungen > Vulkan Instance Implicit Layers aus und prüfen Sie, ob VKLAYER_RENDERDOC_Capture aktiviert ist.

  4. Emulator für Google Play Spiele auf dem PC starten Ein RenderDoc-Overlay wird oben gezeichnet, solange die Unterstützung aktiviert ist.

  5. Starten Sie RenderDoc jederzeit vor oder nach dem Start des Entwickleremulators von Google Play Spiele auf dem PC.

  6. Klicken Sie auf Datei > An laufende Instanz anhängen und wählen Sie crosvm aus.

Umgebungsvariablen angeben

Damit Renderdoc funktioniert, müssen Sie in Windows Umgebungsvariablen hinzufügen oder ändern. Sie können Umgebungsvariablen über die UI, PowerShell oder cmd.exe ändern.

Benutzeroberfläche verwenden
  • Drücken Sie Win + R, um das Dialogfeld für die Ausführung zu öffnen.
  • Geben Sie sysdm.cpl ein, um das Fenster Systemeigenschaften zu öffnen.
  • Wählen Sie den Tab Erweitert aus, falls er noch nicht aktiv ist.
  • Klicken Sie auf die Schaltfläche Umgebungsvariablen.

Hier können Sie entweder auf die Schaltfläche Neu klicken, um eine neue Umgebungsvariable zu erstellen, oder eine Variable auswählen und auf die Schaltfläche Bearbeiten klicken, um sie zu bearbeiten.

PowerShell verwenden

Geben Sie in einem PowerShell-Fenster Folgendes ein:

$Env:VARIABLE_NAME=VALUE

Ersetzen Sie VARIABLE_NAME und VALUE durch die gewünschten Werte. So legen Sie beispielsweise ANDROID_EMU_RENDERDOC auf den Typ "1" fest:

$Env:ANDROID_EMU_RENDERDOC="1"
cmd.exe verwenden

Geben Sie in einem cmd.exe-Fenster Folgendes ein:

set VARIABLE_NAME=VALUE

Ersetzen Sie VARIABLE_NAME und VALUE durch die gewünschten Werte. So legen Sie beispielsweise ANDROID_EMU_RENDERDOC auf den Typ "1" fest:

set ANDROID_EMU_RENDERDOC="1"

Tipps für Android 11 (API-Level 30) oder höher

Google Play Spiele auf dem PC wurde mit den neuesten Android-Releases aktualisiert. Hier sind einige Tipps für die Arbeit mit der neuesten Android-Version.

Tools auf dem neuesten Stand halten

Android Studio installiert eine Version von ADB, die mit dem Entwickleremulator kompatibel ist. Einige Spiel-Engines enthalten jedoch eine ältere Version von ADB. In diesem Fall finden Sie nach der Installation des Entwickleremulators eine kompatible Version von adb unter C:\Program Files\Google\Play Games Developer Emulator\current\emulator.

Wenn Sie eine Version von adb starten, wird die andere beendet. Wenn die Spiel-Engine also automatisch ihre eigene adb-Instanz startet, müssen Sie die adb-Version, die im Emulator für Entwickler enthalten ist, bei jeder Bereitstellung möglicherweise neu starten und neu verbinden.

Wenn Sie ein Android-App-Bundle verwenden, müssen Sie die neueste Version von Bundletool aus dem GitHub-Repository installieren.

Beschränkter Speicher

Android 11 (API-Level 30) oder höher umfasst einen bezogenen Speicher, der einen besseren Schutz für App- und Nutzerdaten im externen Speicher bietet. Abgesehen davon, dass Ihr Spiel mit bestimmten Speicheranforderungen kompatibel ist, müssen Sie zusätzliche Schritte ausführen, um APK-Erweiterungsdateien (OBB) oder Asset-Daten in den Entwickleremulator von Google Play Spiele auf dem PC zu laden. Wenn beim Zugriff auf diese Dateien in Ihrem Spiel Probleme auftreten, gehen Sie so vor:

  1. Erstellen Sie ein Verzeichnis, das Ihre Anwendung lesen kann.
  2. Übertragen Sie Ihre Erweiterungsdateien in den Emulator.
adb shell mkdir /sdcard/Android/obb/com.example.game
adb push main.com.example.game.obb /sdcard/Android/obb/com.example.game

Paketsichtbarkeit

Aufgrund der neuen Regeln für die Paketsichtbarkeit werden Apps, die auf Android 11 (API-Level 30) oder höher ausgerichtet sind, daran gehindert, Informationen zu anderen auf dem Gerät installierten Apps abzufragen. Das bedeutet, dass Ihr Spiel nicht über den Play Store installiert, sondern der Zugriff auf Play-Dienste blockiert wird, wenn es über adb per Sideload übertragen wird. Wenn Sie Ihren IAP mit einem Sideload-Spiel testen möchten, müssen Sie dem Paket „com.android.vending“ in der Datei AndroidManifest.xml eine Abfrage hinzufügen:

<manifest>
    <queries>
        <package android:name="com.android.vending" />
    </queries>
</manifest>

Spiel im Consumer-Client installieren

Sie können ein Spiel erst dann auf dem privaten Client installieren, wenn es im Katalog der Play-Spieldienste aufgeführt wurde. Nachdem Ihr Spiel eine einzelne Veröffentlichung veröffentlicht hat, können Sie einen internen Test-Track erstellen, um zukünftige Updates vor der Veröffentlichung zu validieren.

Der Player-Client unterstützt nicht die auf Entwickler ausgerichteten Funktionen des Entwickleremulators für Google Play Spiele auf dem PC. Dies eignet sich am besten für eine Qualitätssicherung des Spiels vor der Veröffentlichung, um das End-to-End-Spielerlebnis nach der ersten Veröffentlichung zu testen.