Emulator Gier Google Play na PC dla deweloperów to emulator Gier Google Play na PC przeznaczony dla deweloperów. W przeciwieństwie do odtwarzacza możesz instalować i debugować własne pakiety. Możesz też symulować różne konfiguracje odtwarzacza, takie jak proporcje, emulacja myszy i sprzęt do generowania grafiki, aby mieć pewność, że gra działa zgodnie z oczekiwaniami na różnych konfiguracjach PC.
Uruchamianie emulatora
Po zainstalowaniu pojawi się element menu „Emulator dewelopera w Gry Google Play” oraz skrót na pulpicie umożliwiający uruchomienie emulatora. Po zamknięciu okna emulator pozostanie w obszarze systemowym.
Zaloguj się
Po uruchomieniu emulatora po raz pierwszy zostaniesz poproszony(-a) o zalogowanie się na konto Google. Użyj tych samych danych logowania, których zamierzasz używać podczas tworzenia.
Aby się wylogować, kliknij prawym przyciskiem myszy ikonę na pasku systemowym, wybierz Opcje dla deweloperów, a następnie kliknij Wymuś wylogowanie. Gdy to zrobisz, emulator natychmiast się zrestartuje i poprosi Cię o ponowne zalogowanie.
Nawigacja
Po uruchomieniu zobaczysz typowy ekran główny Androida. Kliknięcia lewym przyciskiem myszy są bezpośrednio przekształcane w kliknięcia palcem, tak jak w trybie emulacji myszy. Gry załadowane na potrzeby rozwoju wyświetlają się na liście aplikacji, do której można przejść, klikając i przeciągając w górę na komputerze (co emuluje przesunięcie w górę na telefonie lub tablecie).
Oprócz obsługi myszy Emulator Gier Google Play na PC dla deweloperów udostępnia skróty klawiszowe, które ułatwiają nawigację:
Ctrl + H: naciśnij przycisk Home.Ctrl + B: naciśnij przycisk WsteczF11 lubAlt + Enter : przełączanie między trybem pełnoekranowym a trybem oknaShift + Tab: otwiera nakładkę Google Play Games na PC, w tym bieżące mapowania klawiszy pakietu SDK do wprowadzania danych.
Instalowanie gry
Emulator Gier Google Play na PC dla deweloperów do instalowania pakietów korzysta z Android Debug Bridge (adb).
Zgodność z adb
Aktualne wersje adb
są zgodne z emulatorem deweloperskim Gier Google Play na PC.
Dodatkowo podczas instalowania emulatora na urządzeniu C:\Program
Files\Google\Play Games Developer Emulator\current\emulator
zostanie zainstalowana zgodna wersja.
Aby wykonać te czynności, musisz mieć dostęp do narzędzia adb na urządzeniu $PATH
. Aby sprawdzić, czy adb
jest prawidłowo skonfigurowany, użyj polecenia adb devices
.
adb devices
List of devices attached
localhost:6520 device
Instalowanie gry
- Uruchom
Google Play Games for PC Emulator
W wierszu poleceń wpisz
adb devices
. Powinieneś/powinnaś zobaczyć:adb devices List of devices attached localhost:6520 device
Rozwiązywanie problemów:
- Jeśli pojawi się błąd, sprawdź, czy postępujesz zgodnie z instrukcjami podanymi w artykule Zgodność Adb.
- Jeśli nie widzisz urządzenia, spróbuj połączyć się przez port
6520
:
adb connect localhost:6520
Aby zainstalować grę, wpisz
adb install path\to\your\game.apk
. Jeśli wygenerowałeś pakiet aplikacji na Androida (aab), zapoznaj się z instrukcjami dotyczącymi bundletool i zamiast tego użyj poleceniabundletool install-apks
.Uruchom grę:
- Aby uruchomić grę, wpisz
adb shell monkey -p your.package.name 1
, zastępującyour.package.name
nazwą pakietu gry. - W emulatorze deweloperskim Gier Google Play na PC kliknij ikonę, aby uruchomić grę. Podobnie jak na telefonie z Androidem, aby wyświetlić listę zainstalowanych gier, musisz przesunąć palcem w górę na ekranie głównym.
- Aby uruchomić grę, wpisz
Debugowanie gry
Aby debugować, użyj narzędzia Android Debug Bridge (adb) w taki sam sposób jak w przypadku innych gier.
Emulator jest widoczny jako urządzenie połączone przez localhost:6520
.
adb logcat
działa zgodnie z oczekiwaniami, podobnie jak narzędzia ułatwiające upiększanie lub filtrowanie danych wyjściowych logcat, w tym Android Studio.
Oprócz adb
możesz uzyskać dostęp do logów w katalogu %LOCALAPPDATA%\Google\Play Games Developer Emulator\Logs
. Najbardziej przydatne jest tutaj AndroidSerial.log
, które odpowiada za wszystko, co adb logcat
powinien echować od momentu uruchomienia emulatora.
Ustawienia programisty
Emulator Gier Google Play na PC dla deweloperów skupia się na efektywności deweloperów, a nie na wrażeniach użytkowników. Oznacza to, że masz pełny dostęp do systemu Androida, w tym możliwość korzystania ze standardowego menu uruchamiania Androida zamiast Gier Google Play na PC, a także kontrolę nad funkcjami, które są automatycznie włączane i wyłączane dla graczy.
Testowanie sygnału myszy
Podczas tworzenia gry w Gry Google Play na PC użyj emulatora dla deweloperów, który domyślnie emuluje dotyk, a nie bezpośrednie sterowanie za pomocą myszy. Aby włączyć bezpośrednie sterowanie myszką, kliknij prawym przyciskiem myszy ikonę w obszarze powiadomień, wybierz Opcje dla deweloperów, a następnie Tryb komputera (KiwiMouse).
Gry Google Play na PC mają 2 tryby myszy: emulowany, który przekształca kliknięcia myszą w pojedyncze dotknięcia, oraz tryb „przesyłający” (PC), który pozwala grom na obsługę działań myszy w natywnym środowisku i przechwytywanie kursora. Szczegółowe informacje o używaniu myszy w Gry Google Play na PC znajdziesz w artykule Konfigurowanie sterowania myszką.
W pliku manifestu klienta odtwarzacza można wyłączyć emulację, dodając ten kod:
<manifest ...>
<uses-feature
android:name="android.hardware.type.pc"
android:required="false" />
...
</manifest>
Ten parametr funkcji nie ma żadnego wpływu w środowisku programistycznym.
Testowanie formatów obrazu
Emulator dla deweloperów uruchamia się w formacie 16:9, w przeciwieństwie do klienta odtwarzacza, który pobiera format z ekranu głównego. Kliknij prawym przyciskiem ikonę na pasku systemowym, wybierz Opcje dla deweloperów, a następnie dowolną opcję w sekcji Format obrazu. Dzięki temu możesz sprawdzić, jak gra wygląda na ekranach różnych graczy.
Preferowana metoda konfigurowania proporcji to użycie android:minAspectRatio
i android:maxAspectRatio
.
Na przykład gra w formacie pionowym ma proporcje 9/16
lub 0.5625
, więc warto ustawić maksymalne proporcje 1
, aby gra nie była szersza niż kwadrat:
<activity android:maxAspectRatio="1">
...
</activity>
Podobnie w przypadku gry w orientacji poziomej będzie to 16/9
lub około 1.778
, więc warto ustawić minimalny współczynnik proporcji 1
, aby nie był on węższy niż kwadrat:
<activity android:minAspectRatio="1">
...
</activity>
Co testować
Jeśli gra obsługuje tylko tryb pionowy w pliku manifestu, w menu możesz wybrać 9:16 (Portrait), aby sprawdzić, jak wygląda na komputerach graczy. W przeciwnym razie sprawdź, czy gra działa w najszerszym i najwęźszym formacie poziomym, który obsługuje w pliku manifestu. Pamiętaj, że format 16:9 (domyślny) (lub 9:16 (Portrait), jeśli gra jest tylko w formacie pionowym) jest wymagany do uzyskania pełnej certyfikacji.
Testowanie backendów renderowania
Gry Google Play na PC korzystają z Vulkana do renderowania gier, co jest wspólne dla środowisk zarówno Androida, jak i komputerów PC. Warstwę piaskownicy stosuje się do oddzielenia środowiska komputera PC i Androida. Ponieważ wiele gier nadal używa OpenGL ES do renderowania, ANGLE będzie konwertować polecenia OpenGL ES na polecenia Vulkan zgodne z hostowanym komputerem PC.
Podobnie Gry Google Play na PC maksymalizują zgodność gier i minimalizują wysiłki deweloperów, automatycznie konwertując formaty tekstur przyjazne urządzeniom mobilnym, takie jak ETC1 i ETC2, na formaty przyjazne komputerom w czasie działania. Aby uzyskać najlepsze wyniki, unikaj tej konwersji, korzystając z formatów obsługiwanych przez karty graficzne PC, takich jak DXTC lub BPTC.
Co testować
Jeśli w grze występują nieoczekiwane artefakty związane z renderowaniem, sprawdź źródłową grafikę i rozważ przekształcenie jej w format przyjazny dla komputerów PC. Zwróć szczególną uwagę na tekstury używane do bardziej zaawansowanych efektów, ponieważ problemy z mapą normalną lub mapą sześcien są często trudniejsze do zauważenia niż problemy z albedo.
Konwersja poleceń OpenGL ES na Vulkan przez ANGLE spowoduje pewne obciążenie. Sprawdź, czy osiągasz oczekiwaną wydajność, i rozważ przejście na procesor graficzny Vulkan.
Profilowanie gry na PC
Ponieważ emulator korzysta z tej samej technologii co klient konsumencki, jest to odpowiednie środowisko do profilowania wydajności.
Perfetto to narzędzie do analizowania wydajności na urządzeniach z Androidem. Aby zebrać i wyświetlić ślad usługi Peretto, wykonaj te czynności:
W promptzie PowerShell uruchom śledzenie za pomocą
adb
.adb shell perfetto --time 10s gfx wm sched --out /data/misc/perfetto-traces/example.trace
- Flaga
--time
określa czas trwania zebranego śladu. W tym przykładzie śledzenie trwa 10 sekund. - Argumenty po parametrze
--time
wskazują, które zdarzenia mają być śledzone. W tym przykładziegfx
oznacza grafikę,wm
– zarządzanie oknem, asched
– informacje o planowaniu procesu. To są typowe flagi do profilowania gier. Pełna lista jest dostępna. - Flaga
--out
określa plik wyjściowy, który w następnym kroku zostanie wyodrębniony z emulatora i przesłany na komputer hosta.
- Flaga
Pobieranie ścieżki z hosta
adb pull /data/misc/perfetto-traces/example.trace $HOME/Downloads/example.trace
Otwieranie śledzenia w interfejsie Perfectto
- Otwórz stronę ui.perfetto.dev.
- W lewym górnym rogu w sekcji Nawigacja kliknij Otwórz plik z wykrywaniem.
- Otwórz pobrany w poprzednim kroku plik
example.trace
w kataloguDownloads/
.
Sprawdź ślad w interfejsie Perfectto. Wskazówki:
- Każdy proces ma własny wiersz, który można rozwinąć, aby wyświetlić wszystkie wątki tego procesu. Jeśli profilujesz grę, proces ten jest prawdopodobnie pierwszym.
- Powiększanie i pomniejszanie odbywa się przez przytrzymanie Ctrl i użycie kółka przewijania.
- Gdy używasz zdarzenia
sched
, w przypadku każdego wątku jest wiersz pokazujący, czy stan tego wątku to „running” (uruchomiony), „runnable” (można uruchomić), „sleeping” (uśpiony) czy „blocked” (zablokowany). - Po włączeniu zdarzenia, takiego jak
gfx
, możesz zobaczyć różne wywołania funkcji graficznych wykonane przez różne wątki. Możesz wybrać poszczególne „segmenty”, aby zobaczyć, ile czasu zajęło ich wykonanie, lub przeciągnąć kursor po wierszu, aby otworzyć sekcję „segmenty” na dole i zobaczyć, ile czasu zajęło wykonanie wszystkich segmentów w wybranym przedziale czasowym.
Profilowanie grafiki
Za pomocą RenderDoc możesz przeprowadzić profilowanie grafiki.
- Ustaw zmienną środowiskową
ANDROID_EMU_RENDERDOC
na niepusty ciąg znaków (np."1"
). Ustaw zmienną środowiskową
TMP
na%USERPROFILE%\AppData\LocalLow
. To powoduje, że Renderdoc umieszcza pliki dziennika w miejscu dostępnym w piaskownicy emulatora.Jeśli używasz backendu Vulkan. Wybierz Ustawienia grafiki > Implikowane warstwy instancji Vulkana i upewnij się, że zaznaczona jest opcja VKLAYER_RENDERDOC_Capture.
Uruchom Emulator Gier Google Play na PC dla deweloperów. Przesłonięcie RenderDoc jest wyświetlane u góry, dopóki włączona jest obsługa.
Uruchom RenderDoc w dowolnym momencie przed lub po uruchomieniu gier Google Play na PC w emulatorze dla deweloperów.
Kliknij Plik > Załącz do uruchomionej instancji i wybierz crosvm.
Określanie zmiennych środowiskowych
Aby Renderdoc działał, musisz dodać lub zmienić zmienne środowiskowe w Windows. Zmienne środowiskowe możesz zmieniać za pomocą interfejsu użytkownika, 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 aktywna.
- Kliknij przycisk Zmienna środowiskowa.
Możesz kliknąć przycisk Nowa, 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ć typ ANDROID_EMU_RENDERDOC
na "1"
:
$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ć typ ANDROID_EMU_RENDERDOC
na "1"
:
set ANDROID_EMU_RENDERDOC="1"
Wskazówki dotyczące Androida 11 (poziom API 30) lub nowszego
Gry Google Play na PC są aktualizowane wraz z najnowszymi wersjami Androida. Oto kilka wskazówek dotyczących pracy z najnowszą wersją Androida.
Aktualizuj narzędzia
Android Studio instaluje wersję adb, która jest zgodna z emulatorem dla deweloperów. Niektóre silniki gier zawierają jednak starsze wersje 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
, spowoduje to zamknięcie drugiej. Oznacza to, że jeśli silnik gry automatycznie uruchamia własny egzemplarz adb
, może być konieczne ponowne uruchomienie i ponowne połączenie wersji adb
dołączonej do emulatora dla deweloperów za każdym razem, gdy wdrażasz aplikację.
Jeśli używasz pakietu aplikacji na Androida, musisz zainstalować najnowszą wersję Bundletool z repozytorium GitHub.
Ograniczony dostęp do miejsca na dane
Android 11 (poziom API 30) lub nowszy zawiera ograniczoną pamięć, która zapewnia lepszą ochronę danych aplikacji i użytkownika na zewnętrznej pamięci. Oprócz zapewnienia zgodności gry z wymaganiami dotyczącymi ograniczonego miejsca na dane musisz wykonać dodatkowe czynności, aby załadować pliki rozszerzeń APK (obb) lub dane zasobów do emulatora dewelopera Gier Google Play na PC. Jeśli napotkasz problemy z dostępem do tych plików w grze, 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.game
adb push main.com.example.game.obb /sdcard/Android/obb/com.example.game
Widoczność pakietu
Ze względu na nowe zasady dotyczące widoczności pakietu aplikacje kierowane na Androida 11 (poziom interfejsu API 30) lub nowszego nie mogą wysyłać zapytań o informacje o innych aplikacjach zainstalowanych na urządzeniu. Oznacza to, że Twoja gra nie ma dostępu do Usług Google Play, gdy została zainstalowana z innego urządzenia za pomocą adb
, a nie zainstalowana ze Sklepu Play. Aby przetestować IAP w grze zainstalowanej z pliku, 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 dla konsumentów
Nie możesz zainstalować gry na kliencie dla konsumentów, dopóki nie zostanie ona dodana do katalogu Usług gier Play. Gdy gra ma już jedną wersję, możesz utworzyć ścieżkę testów wewnętrznych, aby weryfikować przyszłe aktualizacje przed ich opublikowaniem.
Klient gracza nie obsługuje funkcji dla deweloperów w Emulatorze dla deweloperów Gier Google Play na PC. Najlepiej jest go używać do testowania gry przed jej wydaniem, aby sprawdzić, jak gra działa od początku do końca po jej wydaniu.