Emulator deweloperski Gier Google Play na PC to emulator przeznaczony dla deweloperów, którzy tworzą gry na PC. W odróżnieniu od wersji dla graczy możesz instalować i debugować własne pakiety. Możesz też symulować różne konfiguracje graczy, takie jak proporcje obrazu, emulacja myszy i backend graficzny, aby mieć pewność, że gra działa zgodnie z oczekiwaniami na różnych konfiguracjach komputerów.
Uruchamianie emulatora
Po zainstalowaniu w menu Start pojawi się element „Emulator deweloperski Gier Google Play”, a na pulpicie skrót do uruchamiania emulatora. Po zamknięciu okna emulator pozostanie w zasobniku systemowym.
Zaloguj się
Przy pierwszym uruchomieniu emulatora pojawi się prośba o zalogowanie się na konto Google. Użyj tych samych danych logowania, których zamierzasz używać podczas tworzenia aplikacji.
Aby się wylogować, kliknij prawym przyciskiem myszy ikonę w zasobniku systemowym, wybierz Opcje programisty, a potem kliknij Wymuś wylogowanie. Gdy to zrobisz, emulator natychmiast się ponownie uruchomi i poprosi o ponowne zalogowanie się.
Nawigacja
Po uruchomieniu zobaczysz typowy ekran główny Androida. Kliknięcia lewym przyciskiem myszy są bezpośrednio przekładane na dotknięcia palcem, tak jak w trybie emulacji myszy. Gry wgrane z zewnątrz na potrzeby programowania pojawiają się na liście aplikacji, do której możesz przejść, klikając i przeciągając w górę na pulpicie (emulując przesunięcie w górę na telefonie lub tablecie).
Oprócz translacji myszy emulator deweloperski Gier Google Play na PC udostępnia skróty klawiszowe, które ułatwiają nawigację:
Ctrl + H : naciśnij przycisk strony głównej.Ctrl + B: naciśnij przycisk Wstecz.F11 lubAlt + Enter : przełączanie między trybem pełnoekranowym a okienkowymShift + Tab: otwórz nakładkę Gier Google Play na PC, w tym bieżące mapowania klawiszy dla pakietu SDK do obsługi danych wejściowych.
Instalowanie gry
Emulator dla deweloperów Gier Google Play na PC używa Android Debug Bridge (adb) do instalowania pakietów.
Zgodność z adb
Obecne wersje adb są zgodne z emulatorem dla deweloperów Gier Google Play na PC.
Podczas instalowania emulatora w lokalizacji C:\Program
Files\Google\Play Games Developer Emulator\current\emulator jest też instalowana zgodna wersja.
Aby wykonać te instrukcje, musisz mieć dostęp do adb w $PATH. Możesz sprawdzić, czy adb jest prawidłowo skonfigurowany, za pomocą polecenia adb devices.
adb devices
List of devices attached
localhost:6520 deviceInstalowanie gry
- Uruchom aplikację
Google Play Games for PC Emulator Wpisz
adb devicesw wierszu poleceń. Powinno się wyświetlić:adb devices List of devices attached localhost:6520 deviceRozwiązywanie problemów:
- Jeśli pojawi się błąd, sprawdź, czy postępujesz zgodnie z instrukcjami w sekcji Zgodność z ADB.
- Jeśli nie widzisz urządzenia, spróbuj ponownie połączyć się przez port
6520:
adb connect localhost:6520Wpisz
adb install path\to\your\game.apk, aby zainstalować grę. Jeśli masz wygenerowany pakiet Android App Bundle (AAB), zapoznaj się z instrukcjami dotyczącymi bundletool i użyjbundletool install-apks.Uruchom grę na jeden z tych sposobów:
- Wpisz
adb shell monkey -p your.package.name 1, aby uruchomić grę. Zastąpyour.package.namenazwą 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ę na ekranie głównym, aby wyświetlić listę zainstalowanych gier.
- Wpisz
Debugowanie gry
Użyj Android Debug Bridge (adb), aby debugować grę tak samo jak każdą inną.
Emulator pojawi się jako urządzenie połączone przez localhost:6520.
adb logcat działa zgodnie z oczekiwaniami, podobnie jak narzędzia, które pomagają upiększać lub filtrować dane wyjściowe logcat, w tym Android Studio.
Oprócz adb dzienniki są dostępne w katalogu %LOCALAPPDATA%\Google\Play Games Developer Emulator\Logs. Najbardziej przydatna jest tu zmienna AndroidSerial.log, która reprezentuje wszystko, co adb logcat
odpowie od momentu uruchomienia emulatora.
Ustawienia programisty
Emulator dla deweloperów Gier Google Play na PC koncentruje się na wydajności deweloperów, a nie na wrażeniach użytkowników. Oznacza to, że masz nieograniczony dostęp do systemu Android, w tym możliwość korzystania ze standardowego programu uruchamiającego Androida zamiast z Gier Google Play na PC, oraz kontrolę nad funkcjami, które w przypadku graczy są automatycznie włączane i wyłączane.
Testowanie sygnału myszy
Podczas tworzenia emulator dla deweloperów Gier Google Play na PC domyślnie emuluje dotyk zamiast bezpośredniego sterowania myszą. Aby włączyć bezpośrednie wprowadzanie danych za pomocą myszy, kliknij prawym przyciskiem myszy ikonę w zasobniku systemowym, wybierz Opcje programisty, a następnie Tryb PC (KiwiMouse).
Gry Google Play na PC mają 2 tryby myszy: tryb emulowany, który tłumaczy kliknięcia myszy na pojedyncze dotknięcia, oraz tryb przekazywania „PC”, który umożliwia grom natywne obsługiwanie działań myszy i przechwytywanie wskaźnika. Więcej informacji o obsłudze myszy w Grach Google Play na PC znajdziesz w artykule Konfigurowanie obsługi myszy.
W kliencie odtwarzacza emulację można wyłączyć, dodając do pliku manifestu ten kod:
<manifest ...>
<uses-feature
android:name="android.hardware.type.pc"
android:required="false" />
...
</manifest>
Ta flaga funkcji nie ma wpływu na środowisko deweloperskie.
Testowanie formatów obrazu
Emulator dewelopera uruchamia się w formacie 16:9, w przeciwieństwie do klienta odtwarzacza, który określa format na podstawie wyświetlacza głównego. Klikając prawym przyciskiem myszy ikonę na pasku systemowym, wybierając Opcje programisty, a następnie dowolną opcję w sekcji Współczynnik proporcji, możesz sprawdzić, jak gra wygląda na ekranach różnych graczy.
Preferowaną metodą konfigurowania formatu obrazu jest użycie android:minAspectRatio i android:maxAspectRatio.
Na przykład gra w formacie pionowym ma proporcje 9/16 lub 0.5625, więc możesz ustawić maksymalne proporcje 1, aby zapobiec rozszerzaniu się gry poza kwadrat:
<activity android:maxAspectRatio="1">
...
</activity>
Podobnie gra w orientacji poziomej miałaby format 16/9 lub w przybliżeniu 1.778, więc możesz ustawić minimalny format obrazu na 1, aby zapobiec jego zwężeniu poniżej kwadratu:
<activity android:minAspectRatio="1">
...
</activity>
Co testować
Jeśli Twoja gra obsługuje w pliku manifestu tylko tryb pionowy, możesz wybrać z menu opcję 9:16 (pionowy), aby zobaczyć, jak będzie wyglądać na komputerach graczy. W przeciwnym razie sprawdź, czy gra działa przy najszerszych i najwęższych proporcjach ekranu w trybie poziomym, które obsługuje plik manifestu. Pamiętaj, że 16:9 (domyślny) (lub 9:16 (pionowy), jeśli gra jest przeznaczona tylko do trybu pionowego) jest wymagany do uzyskania pełnego certyfikatu.
Testowanie backendów renderowania
Gry Google Play na PC wykorzystują Vulkan do renderowania gier, co jest powszechne zarówno w środowiskach Androida, jak i PC. Warstwa piaskownicy służy do izolowania środowisk PC i Androida. Wiele gier nadal używa OpenGL ES do renderowania, więc ANGLE przekształca polecenia OpenGL ES na polecenia Vulkan zgodne z komputerem hosta.
Podobnie Gry Google Play na PC maksymalizują zgodność gier i minimalizują wysiłek deweloperów, automatycznie konwertując w czasie działania formaty tekstur przyjazne dla urządzeń mobilnych, takie jak ETC1 i ETC2, na formaty przyjazne dla komputerów. Aby uzyskać najlepsze wyniki, unikaj tej konwersji, korzystając z formatów obsługiwanych przez karty graficzne na komputerach, takich jak DXTC lub BPTC.
Co testować
Jeśli w grze występują nieoczekiwane artefakty renderowania, sprawdź źródłową grafikę i rozważ przejście na format przyjazny dla komputerów. Zwróć szczególną uwagę na tekstury używane do bardziej zaawansowanych efektów, ponieważ problemy z mapami normalnych lub kostkowymi są często trudniejsze do wykrycia niż problemy z albedo.
Konwersja poleceń OpenGL ES na Vulkan przez ANGLE spowoduje pewne obciążenie. Sprawdź, czy osiągasz oczekiwane wyniki, i rozważ przejście na moduł renderujący oparty na Vulkanie.
Profilowanie gry na PC
Emulator korzysta z tej samej technologii co klient konsumencki, dlatego jest odpowiednim środowiskiem do profilowania wydajności.
Perfetto to narzędzie do analizowania wydajności na Androidzie. Ślad Perfetto możesz zebrać i wyświetlić, wykonując te czynności:
W wierszu polecenia PowerShell rozpocznij śledzenie za pomocą polecenia
adb.adb shell perfetto --time 10s gfx wm sched --out /data/misc/perfetto-traces/example.trace- Flaga
--timeokreśla czas trwania śledzenia, które ma zostać zebrane. W tym przykładzie ślad trwa 10 sekund. - Argumenty po fladze
--timewskazują, które zdarzenia mają być śledzone. W tym przykładziegfxoznacza grafikę,wmzarządzanie oknami, aschedinformacje o planowaniu procesów. Są to typowe flagi profilowania gier. Dostępne jest pełne odniesienie. - Flaga
--outokreśla plik wyjściowy, który w następnym kroku zostanie pobrany z emulatora na komputer hosta.
- Flaga
Pobieranie śladu z hosta
adb pull /data/misc/perfetto-traces/example.trace $HOME/Downloads/example.traceOtwieranie śladu w interfejsie Perfetto
- Otwórz stronę ui.perfetto.dev.
- W lewym górnym rogu w sekcji Nawigacja kliknij Otwórz plik śledzenia.
- Otwórz pobrany w poprzednim kroku plik
example.tracew kataloguDownloads/.
Sprawdź ślad w interfejsie Perfetto. Wskazówki:
- Każdy proces ma własny wiersz, który można rozwinąć, aby wyświetlić wszystkie wątki w tym procesie. Jeśli profilujesz grę, jej proces prawdopodobnie znajduje się w pierwszym wierszu.
- Możesz powiększać i pomniejszać widok, przytrzymując klawisz Control i używając kółka przewijania.
- W przypadku zdarzenia
schedkażdy wątek ma swój wiersz, w którym podano, kiedy stan wątku to „running”, „runnable”, „sleeping” lub „blocked”. - Po włączeniu zdarzenia, takiego jak
gfx, możesz zobaczyć różne wywołania graficzne wykonywane przez różne wątki. Możesz wybrać poszczególne „wycinki”, aby sprawdzić, ile czasu zajęły, lub przeciągnąć wzdłuż wiersza, aby otworzyć sekcję „wycinków” u dołu i sprawdzić, ile czasu zajęły wszystkie wycinki w wybranym przedziale czasu.
Profilowanie grafiki
Za pomocą narzędzia RenderDoc można przeprowadzić profilowanie grafiki.
- Ustaw zmienną środowiskową
ANDROID_EMU_RENDERDOCna niepusty ciąg znaków (np."1"). Ustaw zmienną środowiskową
TMPna%USERPROFILE%\AppData\LocalLow. Dzięki temu Renderdoc umieści pliki dziennika w miejscu dostępnym w piaskownicy emulatora.Jeśli używasz backendu Vulkan. Wybierz Ustawienia grafiki > Warstwy niejawne instancji Vulkan i upewnij się, że pole wyboru VKLAYER_RENDERDOC_Capture jest zaznaczone.
Uruchom emulator deweloperski Gier Google Play na PC. Nakładka RenderDoc jest rysowana u góry, o ile jest włączona.
Uruchom RenderDoc w dowolnym momencie przed lub po uruchomieniu emulatora deweloperskiego Gier Google Play na PC.
Kliknij Plik > Dołącz do działającej instancji i wybierz crosvm.
Określanie zmiennych środowiskowych
Aby Renderdoc działał, musisz dodać lub zmienić zmienne środowiskowe w systemie Windows. Zmienne środowiskowe możesz zmieniać za pomocą interfejsu, programu PowerShell lub cmd.exe.
Korzystanie z interfejsu
- Naciśnij
Win+R , aby otworzyć okno Uruchom. - Wpisz
sysdm.cpl, aby otworzyć okno Właściwości systemu. - Wybierz kartę Zaawansowane, jeśli nie jest jeszcze aktywna.
- Kliknij przycisk Zmienne środowiskowe.
Możesz kliknąć przycisk Nowy, aby utworzyć nową zmienną środowiskową, lub wybrać zmienną i kliknąć przycisk Edytuj, aby ją edytować.
Używanie programu PowerShell
W oknie PowerShell wpisz:
$Env:VARIABLE_NAME=VALUE
Zastąp VARIABLE_NAME i VALUE wartościami, które chcesz ustawić. Aby na przykład ustawić ANDROID_EMU_RENDERDOC na "1", wpisz:
$Env:ANDROID_EMU_RENDERDOC="1"
Używanie cmd.exe
W oknie cmd.exe wpisz:
set VARIABLE_NAME=VALUE
Zastąp VARIABLE_NAME i VALUE wartościami, które chcesz ustawić. Aby na przykład ustawić ANDROID_EMU_RENDERDOC na "1", wpisz:
set ANDROID_EMU_RENDERDOC="1"
Wskazówki dotyczące Androida 11 (poziom API 30) lub nowszego
Gry Google Play na PC są aktualizowane do najnowszych wersji Androida. Oto kilka wskazówek dotyczących korzystania z najnowszej wersji Androida.
Aktualizowanie narzędzi
Android Studio instaluje wersję adb zgodną z emulatorem dewelopera, ale niektóre silniki gier zawierają starszą wersję adb. W takim przypadku po zainstalowaniu emulatora dla deweloperów możesz znaleźć zgodną wersję adb na stronie C:\Program Files\Google\Play Games Developer
Emulator\current\emulator.
Jeśli uruchomisz jedną wersję adb, druga zostanie zamknięta. Oznacza to, że jeśli silnik gry automatycznie uruchamia własną instancję adb, po każdym wdrożeniu może być konieczne ponowne uruchomienie i ponowne połączenie wersji adb dostarczonej z emulatorem deweloperskim.
Jeśli używasz pakietu Android App Bundle, musisz zainstalować najnowszą wersję Bundletool z repozytorium GitHub.
Ograniczony dostęp do miejsca na dane
Android 11 (poziom 30 interfejsu API) lub nowszy zawiera pamięć o ograniczonym zakresie, która zapewnia lepszą ochronę danych aplikacji i użytkowników na pamięci zewnętrznej. Oprócz dostosowania gry do wymagań dotyczących pamięci o ograniczonym zakresie musisz wykonać dodatkowe czynności, aby załadować pliki rozszerzeń APK (obb) lub dane zasobów do emulatora deweloperskiego Gier Google Play na PC. Jeśli podczas próby uzyskania dostępu do tych plików z poziomu gry napotkasz problemy, wykonaj te czynności:
- Utwórz katalog, który aplikacja może odczytać.
- Prześlij pliki rozszerzeń do emulatora.
adb shell mkdir /sdcard/Android/obb/com.example.gameadb push main.com.example.game.obb /sdcard/Android/obb/com.example.game
Widoczność pakietu
Ze względu na nowe zasady dotyczące widoczności pakietów aplikacje kierowane na Androida 11 (poziom API 30) lub nowszego nie mogą wysyłać zapytań o informacje o innych aplikacjach zainstalowanych na urządzeniu. Oznacza to, że Twoja gra jest blokowana
przed dostępem do Usług Play, gdy jest instalowana z innego urządzenia za pomocą adb zamiast ze Sklepu Play. Aby przetestować zakupy w aplikacji w przypadku gry wczytanej z zewnątrz, musisz dodać zapytanie do pakietu „com.android.vending” w pliku AndroidManifest.xml w ten sposób:
<manifest>
<queries>
<package android:name="com.android.vending" />
</queries>
</manifest>
Instalowanie gry w aplikacji klienta
Nie możesz zainstalować gry na urządzeniu klienta, dopóki nie zostanie ona umieszczona w katalogu usług gier Play. Gdy Twoja gra będzie miała jedną wersję, możesz utworzyć ścieżkę testu wewnętrznego, aby przed opublikowaniem sprawdzać przyszłe aktualizacje.
Klient odtwarzacza nie obsługuje funkcji dla deweloperów w Emulatorze deweloperskim Gier Google Play na PC. Najlepiej użyć tej opcji do sprawdzenia jakości gry przed jej opublikowaniem, aby przetestować pełną ścieżkę gracza po początkowej publikacji.