Emulator deweloperski Gier Google Play na PC to emulator przeznaczony dla deweloperów, którzy tworzą gry na platformę Gry Google Play na PC. W przeciwieństwie do użytkowników możesz instalować i debugować własne pakiety. Możesz też symulować różne konfiguracje graczy, takie jak format obrazu, emulacja myszy i backend graficzny, aby mieć pewność, że Twoja gra działa zgodnie z oczekiwaniami w różnych konfiguracjach PC.
Uruchamianie emulatora
Po zainstalowaniu emulatora w menu Start pojawi się element „Emulator deweloperski Gier Google Play”, a na pulpicie – skrót do uruchamiania emulatora. Gdy zamkniesz okno, emulator pozostanie w obszarze powiadomień.
Zaloguj się
Przy pierwszym uruchomieniu emulatora pojawi się prośba o zalogowanie się na konto Google. Użyj tych samych danych logowania, których planujesz używać do tworzenia aplikacji.
Aby się wylogować, kliknij prawym przyciskiem myszy ikonę w obszarze powiadomień, wybierz kolejno Developer Options i Force sign out. Gdy to zrobisz, emulator natychmiast się ponownie uruchomi i poprosi o ponowne zalogowanie.
Nawigacja
Po uruchomieniu emulatora zobaczysz typowy ekran główny Androida. Kliknięcia lewym przyciskiem myszy są bezpośrednio przekładane na dotknięcia palcem w trybie emulacji myszy. Gry zainstalowane z innego urządzenia na potrzeby tworzenia aplikacji 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 palcem w górę na telefonie lub tablecie).
Oprócz tłumaczenia myszy emulator deweloperski Gier Google Play na PC udostępnia skróty klawiszowe ułatwiające nawigację:
Ctrl + H : naciśnij przycisk Home.Ctrl + B : naciśnij przycisk Wstecz.F11 lubAlt + Enter : przełączanie między trybem pełnoekranowym a trybem okienkowym.Shift + 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 deweloperski Gier Google Play na PC używa narzędzia Android Debug Bridge (adb) do instalowania pakietów.
Zgodność z adb
Aktualne wersje adb są zgodne z emulatorem deweloperskim Gier Google Play na PC.
Podczas instalowania
emulatora w folderze C:\Program
Files\Google\Play Games Developer Emulator\current\emulator jest też instalowana zgodna wersja.
Aby wykonać te instrukcje, narzędzie adb musi być dostępne w zmiennej $PATH. Możesz
sprawdzić, czy adb jest prawidłowo skonfigurowane, za pomocą polecenia adb devices.
adb devices
List of devices attached
localhost:6520 deviceZainstaluj grę
- Uruchom
Google Play Games for PC Emulator W wierszu polecenia wpisz
adb devices. 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:6520Aby zainstalować grę, wpisz
adb install path\to\your\game.apk. Jeśli masz pakiet Android App Bundle (aab), zapoznaj się z instrukcjami dotyczącymi narzędzia bundletool i użyjbundletool install-apkszamiast tego.Uruchom grę, wykonując jedną z tych czynności:
- Aby uruchomić grę, wpisz
adb shell monkey -p your.package.name 1, zastępującyour.package.namenazwą pakietu gry. - W emulatorze deweloperskim Gier Google Play na PC kliknij ikonę, aby uruchomić grę. Podobnie jak w przypadku telefonu z Androidem, aby zobaczyć listę zainstalowanych gier, musisz przesunąć palcem w górę na ekranie głównym.
- Aby uruchomić grę, wpisz
Debugowanie gry
Do debugowania używaj narzędzia Android Debug Bridge (adb) tak jak w przypadku każdej innej gry.
Emulator jest widoczny jako urządzenie połączone przez localhost:6520.
Polecenie adb logcat działa zgodnie z oczekiwaniami, podobnie jak narzędzia, które pomagają formatować 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 przydatny jest plik AndroidSerial.log, który zawiera wszystkie informacje, które adb logcat wyświetla od momentu uruchomienia emulatora.
Ustawienia programisty
Emulator deweloperski Gier Google Play na PC jest zoptymalizowany pod kątem wydajności deweloperów, a nie wrażeń użytkowników. Oznacza to, że masz nieograniczony dostęp do systemu Android, w tym do standardowego programu uruchamiającego Androida zamiast do 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 aplikacji emulator deweloperski Gier Google Play na PC domyślnie emuluje dotyk zamiast bezpośredniego sygnału myszy. Aby włączyć bezpośredni sygnał myszy, kliknij prawym przyciskiem myszy ikonę w obszarze powiadomień, wybierz kolejno Opcje programisty i 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 „PC”, który umożliwia grom natywną obsługę działań myszy i przechwytywanie wskaźnika. Więcej informacji o sygnale myszy w Grach Google Play na PC znajdziesz w artykule Konfigurowanie sygnału myszy.
W kliencie gracza emulacja jest wyłączona przez dodanie do manifestu tego kodu:
<manifest ...>
<uses-feature
android:name="android.hardware.type.pc"
android:required="false" />
...
</manifest>
Ta flaga funkcji nie ma wpływu na środowisko programistyczne.
Testowanie formatów obrazu
Emulator deweloperski uruchamia się w formacie obrazu 16:9, w przeciwieństwie do klienta gracza, który pobiera format obrazu z wyświetlacza głównego. Klikając prawym przyciskiem myszy ikonę w zasobniku systemowym, wybierając kolejno Opcje programisty i dowolną opcję w sekcji Format obrazu, możesz sprawdzić, jak gra wygląda na różnych ekranach graczy.
Preferowaną metodą konfigurowania formatu obrazu
jest użycie android:minAspectRatio i android:maxAspectRatio.
Na przykład,
gra w orientacji pionowej ma format obrazu 9/16 lub 0.5625, więc możesz
ustawić maksymalny format obrazu na 1, aby gra nie była szersza niż kwadratowa:
<activity android:maxAspectRatio="1">
...
</activity>
Podobnie gra w orientacji poziomej ma format obrazu 16/9 lub około 1.778, więc możesz chcieć
ustawić minimalny format obrazu na 1, aby gra nie była węższa niż kwadratowa:
<activity android:minAspectRatio="1">
...
</activity>
Co należy przetestować
Jeśli Twoja gra obsługuje w manifeście tylko tryby pionowe, możesz wybrać 9:16 (pionowy) w menu, aby zobaczyć, jak gra wygląda na komputerach graczy. W przeciwnym razie sprawdź, czy gra działa w najszerszych i najwęższych formatach poziomych, które obsługujesz w manifeście. Pamiętaj, że do pełnej certyfikacji wymagany jest format 16:9 (domyślny) (lub 9:16 (pionowy) , jeśli gra jest tylko w orientacji pionowej).
Testowanie backendów renderowania
Gry Google Play na PC używają platformy Vulkan do renderowania gier, która jest wspólna dla środowisk Androida i PC. Do izolowania środowisk PC i Androida używana jest warstwa piaskownicy. Ponieważ wiele gier nadal używa do renderowania platformy OpenGL ES, ANGLE przekonwertuje 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, używając formatów obsługiwanych przez karty graficzne PC, takich jak DXTC lub BPTC.
Co należy przetestować
Jeśli w grze występują nieoczekiwane artefakty renderowania, sprawdź grafikę źródłową 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 normalnymi lub sześciennymi mapami są często trudniejsze do wykrycia niż problemy z albedo.
Konwersja poleceń OpenGL ES na Vulkan przez ANGLE spowoduje pewne obciążenie. Sprawdź, czy spełniasz oczekiwane cele dotyczące wydajności, i rozważ przejście na renderer oparty na platformie Vulkan.
Profilowanie gry na PC
Ponieważ emulator używa tej samej technologii co klient konsumencki, jest odpowiednim środowiskiem do profilowania wydajności.
Perfetto to narzędzie do analizowania wydajności na Androidzie. Aby zebrać i wyświetlić ślad Perfetto, wykonaj te czynności:
W wierszu polecenia PowerShell uruchom śledzenie za pomocą narzędzia
adb.adb shell perfetto --time 10s gfx wm sched --out /data/misc/perfetto-traces/example.trace- Flaga
--timeokreśla czas trwania śledzenia. W tym przykładzie śledzenie 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 do profilowania gier, a pełne informacje o nich są dostępne. - Flaga
--outokreśla plik wyjściowy, który w następnym kroku zostanie pobrany z emulatora na komputer hosta.
- Flaga
Pobierz ślad z hosta.
adb pull /data/misc/perfetto-traces/example.trace $HOME/Downloads/example.traceOtwórz ślad w interfejsie Perfetto.
- Otwórz ui.perfetto.dev.
- W lewym górnym rogu w sekcji Nawigacja kliknij Otwórz plik śledzenia.
- Otwórz plik
example.tracepobrany w poprzednim kroku do 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 jest prawdopodobnie pierwszym wierszem.
- Możesz powiększać i pomniejszać, przytrzymując klawisz Ctrl i używając kółka myszy.
- Gdy używasz zdarzenia
sched, każdy wątek ma wiersz, w którym widać, kiedy stan wątku jest uruchomiony, gotowy do uruchomienia, uśpiony lub zablokowany. - 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 zobaczyć, jak długo trwały, lub przeciągnąć wiersz, aby otworzyć u dołu sekcję „wycinki” i zobaczyć, jak długo trwały wszystkie wycinki w wybranym oknie czasowym.
Profilowanie grafiki
Możesz przeprowadzić profilowanie grafiki za pomocą narzędzia RenderDoc.
- 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 swoje pliki dziennika w miejscu dostępnym w piaskownicy emulatora.Jeśli używasz backendu Vulkan. Wybierz kolejno Ustawienia grafiki > Warstwy niejawne instancji Vulkan i upewnij się, że pole VKLAYER_RENDERDOC_Capture jest zaznaczone.
Uruchom emulator deweloperski Gier Google Play na PC. Jeśli obsługa jest włączona, u góry będzie rysowana nakładka RenderDoc.
Uruchom RenderDoc w dowolnym momencie przed lub po uruchomieniu emulatora deweloperskiego Gier Google Play na PC.
Kliknij kolejno Plik > Dołącz do uruchomionej 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 zmienić 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. - Jeśli nie jest jeszcze aktywna, wybierz kartę Zaawansowane.
- Kliknij przycisk Zmienne środowiskowe.
Możesz kliknąć przycisk Nowa , aby utworzyć nową zmienną środowiskową, lub wybrać zmienną i kliknąć przycisk Edytuj , aby ją edytować.
Korzystanie z 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"
Korzystanie z 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 30 interfejsu API) lub nowszego
Gry Google Play na PC są aktualizowane do najnowszych wersji Androida. Oto kilka wskazówek dotyczących pracy z najnowszą wersją Androida.
Aktualizowanie narzędzi
Android Studio instaluje wersję adb zgodną z emulatorem deweloperskim, ale niektóre silniki gier zawierają starszą wersję adb. W takim
przypadku po zainstalowaniu emulatora deweloperskiego zgodną
wersję adb znajdziesz w folderze 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 połączenie wersji adb dołączonej do emulatora deweloperskiego.
Jeśli używasz pakietu Android App Bundle, musisz zainstalować najnowszą wersję narzędzia Bundletool z repozytorium GitHub.
Ograniczony dostęp do miejsca na dane
Android 11 (poziom 30 interfejsu API) lub nowszy obejmuje ograniczony dostęp do miejsca na dane, który zapewnia lepszą ochronę danych aplikacji i użytkowników w pamięci zewnętrznej. Oprócz dostosowania swojej gry do wymagań dotyczących ograniczonego dostępu do miejsca na dane musisz wykonać dodatkowe czynności, aby wczytać pliki rozszerzeń APK (obb) lub dane zasobów do emulatora deweloperskiego Gier Google Play na PC. Jeśli masz problemy z dostępem do tych plików z gry, wykonaj te czynności:
- Utwórz katalog, do którego Twoja aplikacja może odczytywać dane.
- 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 reguły widoczności pakietów aplikacje kierowane na Androida 11
(poziom 30 interfejsu API) lub nowszego nie mogą wysyłać zapytań o informacje o
innych aplikacjach zainstalowanych na urządzeniu. Oznacza to, że Twoja gra nie może uzyskać dostępu do Usług Google Play, jeśli została zainstalowana z nieoficjalnego źródła za pomocą narzędzia adb zamiast ze Sklepu Play. Aby przetestować zakupy w aplikacji w grze zainstalowanej z innego urządzenia, 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 kliencie konsumenckim
Nie możesz zainstalować gry w kliencie konsumenckim, dopóki nie zostanie ona umieszczona w katalogu Usług Gier Play. Gdy gra będzie miała jedną wersję, możesz utworzyć ścieżkę testu wewnętrznego, aby sprawdzić przyszłe aktualizacje przed ich opublikowaniem.
Klient gracza nie obsługuje funkcji emulatora deweloperskiego Gier Google Play na PC przeznaczonych dla deweloperów. Najlepiej użyć go do kontroli jakości gry przed jej opublikowaniem, aby sprawdzić wrażenia gracza po pierwszej wersji.