L'emulatore per sviluppatori di Google Play Giochi su PC è un emulatore dedicato agli sviluppatori per Google Play Giochi su PC. A differenza dell'esperienza player, puoi installare ed eseguire il debug dei tuoi pacchetti. Puoi anche simulare varie configurazioni del player, ad esempio le proporzioni, l'emulazione del mouse e il backend grafico, per assicurarti che il gioco funzioni come previsto su una varietà di configurazioni PC.
Avvio dell'emulatore
Dopo l'installazione avrai un elemento di menu Start "Emulatore per sviluppatori di Google Play Giochi" e una scorciatoia sul desktop per avviare l'emulatore. L'emulatore rimarrà nella barra delle applicazioni quando chiudi la finestra.
Eseguire l'accesso
Ti viene chiesto di accedere al tuo Account Google la prima volta che esegui l'emulatore. Utilizza le stesse credenziali di accesso che prevedi di usare per lo sviluppo.
Puoi uscire facendo clic con il pulsante destro del mouse sull'icona della barra delle applicazioni, selezionando Opzioni sviluppatore, quindi facendo clic su Forza disconnessione. Quando lo fai, l'emulatore si riavvia immediatamente e ti chiede di accedere di nuovo.
Navigazione
Dopo l'avvio, verrà visualizzata una tipica schermata Home di Android. I clic con il tasto sinistro del mouse vengono convertiti direttamente in tocchi con il dito, come nella modalità di emulazione del mouse. Nell'elenco delle applicazioni vengono visualizzati i giochi installati localmente, a cui puoi accedere facendo clic e trascinando sul desktop (emulando uno scorrimento verso l'alto su uno smartphone o un tablet).
Oltre alla traduzione con il mouse, l'emulatore per sviluppatori di Google Play Giochi su PC offre scorciatoie da tastiera per migliorare la navigazione:
Ctrl + H : premi il pulsante HomeCtrl + B : premi il pulsante IndietroF11 oAlt + Invio : passa dalla modalità a schermo intero alla modalità a finestra e viceversaMaiusc + Tab : apre l'overlay di Google Play Giochi su PC, che include le mappature attuali dei tasti per l'SDK di immissione
Installazione di un gioco
L'emulatore per sviluppatori di Google Play Giochi su PC utilizza Android Debug Bridge (adb) per installare i pacchetti.
compatibilità ADB
Le versioni attuali di adb
sono compatibili con l'emulatore per sviluppatori di Google Play Giochi su PC.
Inoltre, viene installata una versione compatibile all'indirizzo C:\Program
Files\Google\Play Games Developer Emulator\current\emulator
quando installi l'emulatore.
Per seguire queste istruzioni, adb dovrebbe essere disponibile in $PATH
. Puoi
verificare che adb
sia configurato correttamente con il comando adb devices
adb devices
List of devices attached
localhost:6520 device
Installa il gioco
- Avvia
Google Play Games for PC Emulator
Digita
adb devices
nel prompt dei comandi. Dovresti vedere:adb devices List of devices attached localhost:6520 device
Risoluzione dei problemi:
- Se visualizzi un messaggio di errore, verifica di avere seguito le istruzioni riportate in Compatibilità con Adb.
- Se non vedi un dispositivo, prova a riconnetterti sulla porta
6520
:
adb connect localhost:6520
Digita
adb install path\to\your\game.apk
per installare il gioco. Se hai generato un Android App Bundle (aab), consulta le istruzioni per bundletool, quindi usabundletool install-apks
.Per gestire il gioco:
- Digita
adb shell monkey -p your.package.name 1
per avviare il gioco, sostituendoyour.package.name
con il nome del pacchetto del gioco. - Nell'emulatore per sviluppatori di Google Play Giochi su PC, fai clic sull'icona per eseguire il gioco. Come su un telefono Android, devi "scorrere verso l'alto" nella schermata Home per vedere l'elenco dei giochi installati.
- Digita
Eseguire il debug di un gioco
Utilizza Android Debug Bridge (adb) per eseguire il debug come per qualsiasi altro gioco.
L'emulatore viene visualizzato come dispositivo connesso tramite localhost:6520
.
adb logcat
funziona come previsto, così come gli strumenti che aiutano a ottimizzare o filtrare l'output del logcat, tra cui Android Studio.
Oltre a adb
, è possibile accedere ai log nella directory %LOCALAPPDATA%\Google\Play Games Developer Emulator\Logs
. L'elemento più utile qui è AndroidSerial.log
, che rappresenta tutto l'eco di adb logcat
dal momento in cui viene avviato l'emulatore.
Impostazioni di sviluppo
L'emulatore per sviluppatori di Google Play Giochi su PC si concentra sull'efficienza degli sviluppatori anziché sull'esperienza dell'utente finale. Ciò significa che hai accesso illimitato al sistema Android, ad esempio l'utilizzo dell'Avvio app di Android standard anziché l'esperienza Google Play Giochi su PC, nonché i controlli sulle funzionalità che vengono altrimenti attivate e disattivate automaticamente per i giocatori.
Test dell'input del mouse in corso...
Durante lo sviluppo, l'emulatore per sviluppatori di Google Play Giochi su PC utilizza per impostazione predefinita l'emulazione al tocco anziché darti input diretto del mouse. Per attivare l'input diretto del mouse, fai clic con il pulsante destro del mouse sull'icona nella barra delle applicazioni, seleziona Opzioni sviluppatore, quindi Modalità PC (KiwiMouse).
Google Play Giochi su PC ha due modalità mouse: una modalità emulata che converte i clic del mouse in singoli tocchi e una "modalità PC" passthrough che consente ai giochi di gestire le azioni con il mouse in modo nativo ed eseguire l'acquisizione con il puntatore. Per informazioni dettagliate sull'input del mouse in Google Play Giochi su PC, consulta la pagina Configurare l'input del mouse.
Nel client del player, l'emulazione viene disattivata aggiungendo quanto segue al file manifest:
<manifest ...>
<uses-feature
android:name="android.hardware.type.pc"
android:required="false" />
...
</manifest>
Questo flag di funzionalità non ha alcun effetto nell'ambiente di sviluppo.
Test delle proporzioni
L'emulatore per sviluppatori viene avviato in proporzioni 16:9, a differenza del client del player che ricava le proporzioni dal display principale. Fai clic con il pulsante destro del mouse sull'icona della barra delle applicazioni, seleziona Opzioni sviluppatore, quindi fai clic su qualsiasi opzione nella sezione Proporzioni, puoi testare l'aspetto del gioco sui diversi schermi dei giocatori.
Il metodo preferito per configurare le proporzioni
è utilizzare android:minAspectRatio
e android:maxAspectRatio
.
Ad esempio, un gioco verticale avrà proporzioni pari a 9/16
o 0.5625
, pertanto ti consigliamo di impostare proporzioni massime di 1
per evitare che il gioco abbia una larghezza maggiore del quadrato:
<activity android:maxAspectRatio="1">
...
</activity>
Analogamente, un gioco orizzontale sarebbe 16/9
o approssimativamente 1.778
, quindi ti consigliamo
di impostare proporzioni minime di 1
per evitare che diventi più sottile del quadrato:
<activity android:minAspectRatio="1">
...
</activity>
Che cosa verificare
Se il gioco supporta solo le modalità verticali nel file manifest, puoi selezionare 9:16 (Verticale) nel menu a discesa per vederne l'aspetto sui PC dei giocatori. In caso contrario, verifica che il gioco funzioni nelle proporzioni orizzontali più ampie e strette supportate nel file manifest, tenendo presente che il formato 16:9 (predefinito) (o 9:16 (verticale) se è necessario solo la certificazione verticale).
Test dei backend di rendering
Google Play Giochi su PC utilizza ANGLE come livello di compatibilità per garantire che le chiamate OpenGL ES vengano gestite correttamente dal PC host tramite un backend DirectX o Vulkan. L'emulatore supporta anche Vulkan direttamente, anche se non su Direct. Questo livello converte anche i formati di texture compressi solo mobile in formati compatibili con PC. Se fai clic con il tasto destro del mouse sull'icona della barra delle applicazioni e seleziona Override grafico generale, puoi impostare l'opzione predefinita del sistema o forzare l'attivazione o la disattivazione di vulkan per i test di compatibilità.
Che cosa verificare
Esistono variazioni minime nei formati delle texture supportati e nei passaggi necessari per emulare varie funzionalità per dispositivi mobili su computer. Per la profilazione e l'ottimizzazione del gioco, potrebbe essere utile controllare ogni backend.
Profilazione del gioco per PC
Poiché l'emulatore utilizza la stessa tecnologia del client consumer, è un ambiente adatto per la profilazione delle prestazioni.
Perfetto è uno strumento per analizzare le prestazioni su Android. Puoi raccogliere e visualizzare una traccia Perfetto seguendo questi passaggi:
In un prompt di PowerShell, avvia una traccia utilizzando
adb
adb shell perfetto --time 10s gfx wm sched --out /data/misc/perfetto-traces/example.trace
- Il flag
--time
specifica la durata della traccia da raccogliere.In questo esempio, la traccia è di 10 secondi. - Gli argomenti dopo il flag
--time
indicano gli eventi da tracciare. In questo esempio,gfx
indica immagini, informazioni sulla gestione delle finestre diwm
esched
sulla pianificazione dei processi. Si tratta di flag comuni per i giochi di profilazione ed è disponibile un riferimento completo. - Il flag
--out
specifica il file di output, che viene estratto dall'emulatore e sulla macchina host nel passaggio successivo.
- Il flag
Esegui il pull della traccia dal tuo host
adb pull /data/misc/perfetto-traces/example.trace $HOME/Downloads/example.trace
Apri la traccia nell'UI di Perfetto
- Apri ui.perfetto.dev.
- Seleziona Apri file di traccia nell'angolo in alto a sinistra in Navigazione.
- Apri il file
example.trace
scaricato nel passaggio precedente nella directoryDownloads/
.
Esamina la traccia nell'interfaccia utente di Perfetto. Ecco alcuni suggerimenti:
- Ogni processo ha la propria riga, che può essere espansa per mostrare tutti i thread in quel processo. Se stai profilando un gioco, il processo è probabilmente la prima riga.
- Puoi aumentare e diminuire lo zoom tenendo premuto Ctrl e utilizzando la rotellina di scorrimento.
- Quando si utilizza l'evento
sched
, è presente una riga per ogni thread che mostra quando lo stato del thread è in esecuzione, eseguibile, in fase di sospensione o bloccato. - Quando attivi un evento come
gfx
, puoi vedere le varie chiamate grafiche effettuate da vari thread. Puoi selezionare singole "sezioni" per vedere quanto tempo hanno impiegato oppure trascinare lungo una riga per aprire una sezione "Sezioni" in basso e mostrare il tempo impiegato da tutte le sezioni nella finestra di tempo selezionata.
Profilazione della grafica
È possibile eseguire alcune profilazioni delle immagini con RenderDoc.
- Imposta la variabile di ambiente
ANDROID_EMU_RENDERDOC
su una stringa non vuota (ad esempio"1"
). Imposta la variabile di ambiente
TMP
su%USERPROFILE%\AppData\LocalLow
. Questo indica a Renderdoc di posizionare i file di log in un punto qualsiasi della sandbox dell'emulatore.Se utilizzi il backend Vulkan. Seleziona Impostazioni grafica > Livelli impliciti delle istanze Vulkan e assicurati che l'opzione VKLAYER_RENDERDOC_ Capture sia selezionata.
Avvia l'emulatore per sviluppatori di Google Play Giochi su PC. In alto viene disegnato un overlay RenderDoc, purché il supporto sia attivo.
Avvia RenderDoc in qualsiasi momento prima o dopo il lancio dell'emulatore per sviluppatori di Google Play Giochi su PC.
Fai clic su File > Collega all'istanza in esecuzione e seleziona crosvm.
Specifica le variabili di ambiente
Affinché Renderdoc funzioni, devi aggiungere o modificare le variabili di ambiente in Windows. Puoi modificare le variabili di ambiente utilizzando UI, PowerShell o cmd.exe.
Utilizzare l'interfaccia utente
- Premi
Win+R per aprire la finestra di dialogo Esegui. - Digita
sysdm.cpl
per aprire la finestra Proprietà del sistema. - Seleziona la scheda Avanzate, se non è già attiva.
- Fai clic sul pulsante Variabili di ambiente.
Da qui puoi fare clic sul pulsante Nuova per creare una nuova variabile di ambiente o selezionare una variabile e fare clic sul pulsante Modifica per modificarla.
Usa PowerShell
In una finestra di PowerShell, digita:
$Env:VARIABLE_NAME=VALUE
Sostituisci VARIABLE_NAME
e VALUE
con i valori che vuoi impostare. Ad
esempio, per impostare ANDROID_EMU_RENDERDOC
su "1"
tipo:
$Env:ANDROID_EMU_RENDERDOC="1"
Utilizzare cmd.exe
In una finestra di cmd.exe, digita:
set VARIABLE_NAME=VALUE
Sostituisci VARIABLE_NAME
e VALUE
con i valori che vuoi impostare. Ad
esempio, per impostare ANDROID_EMU_RENDERDOC
su "1"
tipo:
set ANDROID_EMU_RENDERDOC="1"
Suggerimenti per Android 11 (livello API 30) o versioni successive
Google Play Giochi su PC è aggiornato con le ultime release di Android. Ecco alcuni suggerimenti per utilizzare l'ultima versione di Android.
Mantieni aggiornati gli strumenti
Android Studio installa una versione di adb compatibile con l'emulatore
sviluppatore. Tuttavia, alcuni motori di gioco includono una versione precedente di adb. In questo caso, dopo aver installato l'emulatore per sviluppatori, puoi trovare una versione compatibile di adb
su C:\Program Files\Google\Play Games Developer
Emulator\current\emulator
.
Se avvii una versione di adb
, questa termina l'altra. Ciò significa che se il motore grafico avvia automaticamente la propria istanza adb
, potrebbe essere necessario riavviare e ricollegare la versione di adb
fornita con l'emulatore per sviluppatori ogni volta che esegui il deployment.
Se utilizzi un Android App Bundle, devi installare la versione più recente di Bundletool dal repository GitHub.
Archiviazione mirata
Android 11 (livello API 30) o versioni successive include l'archiviazione mirata, che offre una migliore protezione ai dati delle app e degli utenti memorizzati nell'unità di archiviazione esterna. Oltre a rendere il tuo gioco compatibile con i requisiti di archiviazione in ambito, devi eseguire passaggi aggiuntivi per caricare i file di espansione APK (Obb) o i dati degli asset nell'emulatore per sviluppatori di Google Play Giochi su PC. Segui questi passaggi se riscontri problemi di accesso a questi file dal gioco:
- Crea una directory che possa essere letta dalla tua app.
- Esegui il push dei file di espansione all'emulatore.
adb shell mkdir /sdcard/Android/obb/com.example.game
adb push main.com.example.game.obb /sdcard/Android/obb/com.example.game
Visibilità dei pacchetti
A causa delle nuove regole di visibilità dei pacchetti, le app destinate ad Android 11 (livello API 30) o versioni successive non possono eseguire query sulle informazioni relative alle altre app installate su un dispositivo. Ciò significa che il tuo gioco non può accedere a Play Services quando viene trasferito tramite adb
anziché essere installato tramite il Play Store. Per testare il tuo IAP con un gioco sideload, devi aggiungere una query al pacchetto "com.android.vending
" nel file AndroidManifest.xml
, come indicato di seguito:
<manifest>
<queries>
<package android:name="com.android.vending" />
</queries>
</manifest>
Installazione del gioco nel client consumer
Non puoi installare un gioco sul client consumer finché non viene elencato nel catalogo dei servizi per i giochi di Play. Dopo che il gioco ha una singola release, puoi creare un canale di test interno per convalidare gli aggiornamenti futuri prima del rilascio.
Il client player non supporta le funzionalità incentrate sugli sviluppatori dell'emulatore per sviluppatori di Google Play Giochi su PC. Questa opzione è utile per eseguire il QA del gioco prima del rilascio, al fine di testare l'esperienza del player end-to-end dopo la release iniziale.