Tworzenie za pomocą emulatora dla deweloperów Gier Google Play na PC

Emulator dla programistów Gier Google Play na PC to emulator dla programistów, Gry Google Play na PC. W przeciwieństwie do odtwarzacza, możesz zainstalować na debugowanie własnych pakietów. Możesz też symulować różne konfiguracje odtwarzaczy. takie jak format obrazu, emulacja myszy czy backend graficzny, Sprawdź, czy gra działa zgodnie z oczekiwaniami na różnych komputerach konfiguracji.

Uruchamianie emulatora

Po zainstalowaniu będzie dostępny „Emulator dla deweloperów Gier Google Play”. rozpocznij i skrót na pulpicie, który pozwala uruchomić emulator. Emulator pozostaną na pasku zadań po zamknięciu okna.

Zaloguj się

Prośba o zalogowanie się na konto Google pojawia się przy pierwszym uruchomieniu za pomocą emulatora. Używaj tych samych danych logowania, których zamierzasz używać na potrzeby programowania.

Aby się wylogować, kliknij prawym przyciskiem myszy ikonę na pasku zadań i wybierz opcję Programista Opcje, a następnie kliknij Wymuś wylogowanie. Gdy to zrobisz, emulator natychmiast się uruchomi i poprosi o ponowne zalogowanie.

Po uruchomieniu telefonu zobaczysz typowy ekran główny Androida. Lewa mysz a kliknięcia przekładają się bezpośrednio na dotknięcia palcami, tak jak w trybie emulacji myszy. Gry pobrane lokalnie na potrzeby programowania pojawiają się na liście aplikacji. Możesz kliknij i przeciągnij w górę po pulpicie (emulacja przesunięcia w górę po telefon lub tablet).

Oprócz tłumaczenia za pomocą myszy Emulator dla deweloperów Gier Google Play na PC zapewnia skróty klawiszowe poprawiające nawigację:

  • Ctrl + H: naciśnij przycisk ekranu głównego
  • Ctrl + B: naciśnij przycisk Wstecz
  • F11 lub Alt + Enter: przełączanie między pełnym ekranem a trybem pełnoekranowym tryb okna
  • Shift + Tab: otwórz nakładkę „Gry Google Play na PC”, w tym bieżące mapowania kluczy na potrzeby pakietu danych wejściowych
.

Instaluję grę

Emulator dla deweloperów Gier Google Play na PC używa Android Debug Bridge (adb) do i instalować pakiety.

zgodność adb

Aktualne wersje pakietu adb są zgodne z emulatorem dla deweloperów Gier Google Play na PC. Dodatkowo zgodna wersja jest instalowana w C:\Program Files\Google\Play Games Developer Emulator\current\emulator podczas instalacji za pomocą emulatora.

Aby wykonać te instrukcje, plik adb powinien być dostępny w $PATH. Dostępne opcje sprawdź, czy usługa adb jest prawidłowo skonfigurowana za pomocą polecenia adb devices

adb devices
List of devices attached
localhost:6520  device

Zainstaluj grę

  • Uruchom Google Play Games for PC Emulator
  • Wpisz adb devices w wierszu poleceń. Zobaczysz, że:

    adb devices
    List of devices attached
    localhost:6520 device
    
  • Rozwiązywanie problemów:

    • Jeśli pojawi się błąd, sprawdź, czy wykonujesz czynności opisane na stronie Ab .
    • Jeśli nie widzisz urządzenia, spróbuj połączyć się ponownie przez port 6520:
    adb connect localhost:6520
    
  • Wpisz adb install path\to\your\game.apk, by zainstalować grę. Jeśli wygenerował pakiet Android App Bundle (aab), zapoznaj się z instrukcjami bundletool, a w zamian używaj bundletool install-apks.

  • Uruchom grę na 2 sposoby:

    • Wpisz adb shell monkey -p your.package.name 1, aby uruchomić grę, zastępując your.package.name nazwą pakietu gry.
    • W emulatorze dla deweloperów Gier Google Play na PC kliknij ikonę, aby uruchomić grę. Podobnie jak na telefonie z Androidem, musisz „przesunąć palcem w górę”. w domu ekranu, aby zobaczyć listę zainstalowanych gier.

Debugowanie gry

Użyj narzędzia Android Debug Bridge (adb), aby przeprowadzić debugowanie tak samo jak w przypadku każdej innej gry. Emulator wyświetla się jako urządzenie połączone przez localhost:6520.

adb logcat działa zgodnie z oczekiwaniami, podobnie jak narzędzia, które pomagają precyzować i filtrować dane wyjściowe logcat – w tym Android Studio.

Dostęp do dzienników możesz uzyskać nie tylko w adb, ale też w %LOCALAPPDATA%\Google\Play Games Developer Emulator\Logs. Większość przydatny tutaj jest AndroidSerial.log, który reprezentuje wszystko adb logcat echo od momentu uruchomienia emulatora.

Ustawienia programisty

Emulator dla deweloperów Gier Google Play na PC koncentruje się na wydajności programistów, a nie na niż wrażeniami użytkownika. Oznacza to, że masz niezakłócony dostęp do systemu Android, w tym standardowego Menu z aplikacjami zamiast Gry Google Play na PC i mają kontrolę nad funkcjami, które są w innych przypadkach automatycznie włączane i wyłączane dla odtwarzaczy.

Testowanie wprowadzania myszy

W trakcie tworzenia aplikacji Emulator dla programistów Gier Google Play na PC domyślnie ustawia tryb dotykowy do emulacji, a nie do bezpośredniego wprowadzania danych za pomocą myszy. Możesz włączyć funkcję bezpośredniego myszy kliknij prawym przyciskiem myszy ikonę na pasku zadań i wybierz Opcje programisty. i tryb PC (KiwiMouse).

Gry Google Play na PC mają 2 tryby myszy: emulowany tryb tłumaczenia, za pomocą pojedynczych kliknięć i przejścia w „tryb PC”. który pozwala grom obsługiwać natywnie wykonywać działania związane z myszą i przechwytywać wskaźnik. Szczegółowe informacje o ruchu myszy w Grach Google Play na PC znajdziesz w artykule Konfigurowanie wprowadzania myszy.

W kliencie odtwarzacza emulacja jest wyłączona przez dodanie tego pliku do pliku manifestu:

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

Ta flaga funkcji nie ma wpływu w środowisku programistycznym.

Testowanie formatów obrazu

Emulator programisty uruchamia się w formacie obrazu 16:9 – w przeciwieństwie do odtwarzacza klienta, który pobiera współczynnik proporcji z ekranu głównego. Po prawej kliknij ikonę na pasku zadań i wybierz Opcje programisty, a następnie dowolny w sekcji Współczynnik wyświetlania możesz sprawdzić, jak gra wygląda na na ekranach różnych odtwarzaczy.

Preferowana metoda konfigurowania formatu obrazu jest użycie android:minAspectRatio i android:maxAspectRatio.

Przykład: gra w orientacji pionowej ma format obrazu 9/16 lub 0.5625, więc warto Ustaw maksymalny format obrazu na 1, by gra nie była szerszy niż kwadrat:

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

Podobnie gra w orientacji poziomej to 16/9 lub około 1.778, więc być może warto aby ustawić minimalny współczynnik proporcji 1, dzięki czemu obraz nie będzie krótszy niż kwadrat:

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

Co testować

Jeśli Twoja gra obsługuje w pliku manifestu tylko tryby portretowe, możesz wybrać opcję 9:16 (Pionowo), aby zobaczyć, jak gracze wyglądają na W przeciwnym razie Sprawdź, czy gra działa przy najszerszym i najwęższym support w pliku manifestu, pamiętając, że 16:9 (domyślna) (lub 9:16 (pionowy), jeśli gra jest tylko pionowa) jest wymagana w przypadku pełny certyfikat.

Testowanie backendów renderowania

Gry Google Play na PC wykorzystują ANGLE jako warstwę zgodności, upewnij się, że wywołania OpenGL ES są prawidłowo obsługiwane przez komputer PC za pomocą zaplecza oprogramowania Direct Direct lub Vulkan, Emulator obsługuje też bezpośrednio Vulkan, chociaż nie w trybie Direct (DirectX). Ta warstwa konwertuje też skompresowane formaty tekstury przeznaczone tylko na urządzenia mobilne na komputery. Klikając prawym przyciskiem myszy ikonę na pasku zadań i wybierając Zastąpienie stosu graficznego, możesz ustawić wartość domyślną systemu lub wymuszania włączania i wyłączania interfejsu vulkan na potrzeby testowania zgodności.

Co testować

Obsługiwane formaty tekstur i kroki wymagane do emulować różne funkcje mobilne na komputerze. Podczas profilowania i optymalizacji warto sprawdzić każdy backend.

Profilowanie gry na PC

Emulator używa tej samej technologii co klient konsumenta, odpowiednie środowisko do profilowania wydajności.

Perfetto to narzędzie do analizy wydajności na Androidzie. Możesz zbierać aby wyświetlić log czasu Perfetto, wykonaj te czynności:

  1. Rozpocznij log czasu w wierszu poleceń PowerShell za pomocą narzędzia adb

    adb shell perfetto --time 10s gfx wm sched --out /data/misc/perfetto-traces/example.trace
    
    1. Flaga --time określa czas trwania logu czasu do zebrania.W tym np. ślad wynosi 10 sekund.
    2. Argumenty po fladze --time wskazują, które zdarzenia mają być prześledzić. W tym przykładzie gfx oznacza grafikę, zarządzanie oknami wm oraz Informacje o harmonogramie procesu w sched. Są to typowe flagi profilowania gier i dostępne są pełne materiały referencyjne.
    3. Flaga --out określa plik wyjściowy, który jest pobierany z w następnym kroku.
  2. Pobieranie logu czasu z hosta

    adb pull /data/misc/perfetto-traces/example.trace $HOME/Downloads/example.trace
    
  3. Otwórz log czasu w interfejsie Perfetto

    1. Otwórz stronę ui.perfetto.dev.
    2. W lewym górnym rogu w sekcji Navigation wybierz Otwórz plik śledzenia.
    3. Otwórz plik example.trace pobrany w poprzednim kroku na Downloads/.
  4. Sprawdź ślad w interfejsie Perfetto. Wskazówki:

    1. Każdy proces ma własny wiersz, który można rozwinąć, aby wyświetlić wszystkie wątki. co buduje do niego zaufanie. Jeśli profilujesz grę, prawdopodobnie jest to pierwszy proces. .
    2. Możesz powiększać i pomniejszać, przytrzymując klawisz Ctrl i przewijając pokrętło.
    3. Gdy używasz zdarzenia sched, każdy wątek zawiera wiersz pokazujący, kiedy że wątek jest uruchomiony, jest uruchomiony, uśpiony lub zablokowany.
    4. Po włączeniu zdarzenia takiego jak gfx możesz zobaczyć różne i rozmów graficznych przez różne wątki. Możesz wybrać poszczególne „wycinki” do i zobaczyć, ile czasu zajęło ich to, lub przeciągnąć wzdłuż wiersza, powodując (sekcja) zostanie wyświetlony na dole i pokaże, ile wycinków zajęło Ci w wybranym przedziale czasu.

Profilowanie grafiki

Profilowanie grafiki można wykonać za pomocą RenderDoc.

  1. Ustawianie zmiennej środowiskowej ANDROID_EMU_RENDERDOC do niepustego ciągu (np. "1").
  2. Ustaw zmienną środowiskową TMP na %USERPROFILE%\AppData\LocalLow Dzięki temu Renderdoc będzie rozmieszczać pliki dziennika w jakimś miejscu dostępnym w piaskownicy emulatora.

  3. Jeśli używasz backendu Vulkan. Wybierz Ustawienia grafiki > Vulkan Instance (Instancja ogólna) i upewnij się, że VKLAYER_RENDERDOC_Capture jest zaznaczony.

  4. Uruchom emulator dla programistów Gier Google Play na PC. Nakładka RenderDoc jest rysowana w do góry, o ile obsługa jest włączona.

  5. Uruchamiaj RenderDoc w dowolnym momencie przed emulatorem dla deweloperów Gier Google Play na PC lub po nim nowych funkcji.

  6. Kliknij Plik > Dołącz do działającej instancji i wybierz crosvm.

Określ zmienne środowiskowe

Aby skrypt Renderdoc działał prawidłowo, musisz dodać lub zmienić zmienne środowiskowe w systemie Windows. Zmienne środowiskowe możesz zmieniać za pomocą interfejsu UI, PowerShell lub cmd.exe.

Korzystanie z interfejsu
  • Naciśnij Win + R, aby otworzyć okno uruchamiania.
  • Wpisz sysdm.cpl, aby otworzyć okno Właściwości systemu.
  • Wybierz kartę Zaawansowane, jeśli nie jest jeszcze aktywna.
  • Kliknij przycisk Zmienne środowiskowe.

Tutaj możesz kliknąć przycisk Nowe, aby utworzyć nowe środowisko. lub wybierz zmienną i kliknij przycisk Edytuj, aby ją edytować.

Używanie PowerShell

W oknie PowerShell wpisz:

$Env:VARIABLE_NAME=VALUE

Zastąp VARIABLE_NAME i VALUE wartościami, które chcesz ustawić. Dla: przykład, aby ustawić z ANDROID_EMU_RENDERDOC na "1" typ:

$Env:ANDROID_EMU_RENDERDOC="1"
Użyj cmd.exe

W oknie cmd.exe wpisz:

set VARIABLE_NAME=VALUE

Zastąp VARIABLE_NAME i VALUE wartościami, które chcesz ustawić. Dla: przykład, aby ustawić z ANDROID_EMU_RENDERDOC na "1" typ:

set ANDROID_EMU_RENDERDOC="1"

Wskazówki dotyczące Androida 11 (poziom interfejsu API 30) lub nowszego

Gry Google Play na PC zostały zaktualizowane o najnowsze wersje Androida. Oto ze wskazówkami na temat pracy z najnowszą wersją Androida.

Dbaj o aktualność narzędzi

Android Studio instaluje wersję adb zgodną z programistą emulator; ale niektóre silniki gier zawierają starszą wersję adb. Pod tym kątem po zainstalowaniu emulatora programisty możesz znaleźć zgodny wersji adb na C:\Program Files\Google\Play Games Developer Emulator\current\emulator.

Gdy uruchomisz jedną wersję adb, zakończy się druga. Oznacza to, że jeśli silnik gry automatycznie uruchamia własne wystąpienie adb, być może aby ponownie uruchomić i ponownie połączyć wersję aplikacji adb z deweloperem emulatorowi podczas wdrażania.

Jeśli używasz pakietu aplikacji na Androida, musisz zainstalować najnowszą wersję Bundletool z repozytorium GitHub.

Miejsce na dane w ograniczonym zakresie

Android 11 (poziom interfejsu API 30) lub nowszy obejmuje ograniczone miejsce na dane, które zapewnia lepsza ochrona danych aplikacji i użytkownika w pamięci zewnętrznej. Oprócz tego zgodne z wymaganiami dotyczącymi miejsca na dane, musisz wykonaj dodatkowe kroki, by wczytać pliki rozszerzeń APK (obb) lub dane zasobów do pliku Emulator dla deweloperów Gier Google Play na PC. Jeśli napotkasz jakieś problemy, wykonaj te czynności: uzyskiwania dostępu do tych plików w grze:

  1. Utwórz katalog, który będzie można odczytywać przez aplikację.
  2. Przekaż pliki rozszerzeń do emulatora.
adb shell mkdir /sdcard/Android/obb/com.example.game
adb push main.com.example.game.obb /sdcard/Android/obb/com.example.game

Widoczność pakietów

Ze względu na nowe reguły widoczności pakietów aplikacje kierowane na Androida 11 (poziom interfejsu API 30) lub wyższym są zablokowane i nie mogą wysyłać zapytań o informacje innych aplikacji zainstalowanych na urządzeniu. Oznacza to, że Twoja gra jest zablokowana nie uzyskuje dostępu do Usług Google Play, gdy zostaną pobrane z innego źródła przez adb, a nie zainstalowane ze Sklepu Play. Aby przetestować zakupy w aplikacji w grze zainstalowanej z innego urządzenia: musisz dodać zapytanie do pakietu „com.android.vending” w AndroidManifest.xml w ten sposób:

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

Instalowanie gry w kliencie dla użytkowników indywidualnych

Nie możesz zainstalować gry w kliencie dla klientów indywidualnych, dopóki nie zostanie ona wymieniona w Katalog usług gier Play. Gdy gra ukaże 1 premierę, może utworzyć ścieżkę testu wewnętrznego, aby sprawdzać przyszłe aktualizacje przed premierą.

Klient odtwarzacza nie obsługuje funkcji przeznaczonych dla programistów Emulator dla deweloperów Gier Google Play na PC. Najlepiej sprawdza się to podczas kontroli jakości gry przed premierą. aby przetestować kompleksowe wrażenia graczy po premierze.