Questa pagina elenca i problemi noti, le soluzioni alternative e i suggerimenti per la risoluzione dei problemi relativi all'emulatore Android. Se riscontri un problema non elencato qui o non riesci a utilizzare una soluzione alternativa elencata qui, segnala un bug.
Problemi generali
Google Maps non viene visualizzato nei controlli estesi di Android Emulator
A partire da metà maggio, le versioni di Android Emulator precedenti alla 34.2.13 non avranno più Google Maps funzionante nei controlli estesi. Gli emulatori più vecchi vengono forniti con una versione di Chromium incompatibile con l'API Maps JavaScript di Google.
Controllare che lo spazio su disco sia sufficiente
Per evitare arresti anomali e blocchi dovuti a spazio libero su disco insufficiente, l'emulatore verifica la presenza di spazio libero su disco sufficiente all'avvio e non si avvia a meno che non siano disponibili almeno 5 GB. Se l'emulatore non si avvia, controlla se hai spazio libero su disco sufficiente.
Software antivirus
Poiché molti pacchetti software di sicurezza e antivirus funzionano monitorando ogni operazione di lettura e scrittura, l'utilizzo di questi software può ridurre le prestazioni di strumenti come l'emulatore Android.
Molti pacchetti antivirus offrono la possibilità di aggiungere applicazioni specifiche a un elenco di applicazioni attendibili, il che consente alle applicazioni elencate di funzionare senza un calo delle prestazioni. Se riscontri prestazioni scarse durante il salvataggio o il caricamento degli snapshot AVD, puoi migliorarle aggiungendo l'applicazione Android Emulator come applicazione attendibile nel tuo software antivirus.
L'impatto sulle prestazioni varia a seconda dei pacchetti software antivirus. Se hai installato un software antivirus aggiuntivo oltre a quello incluso nel sistema operativo, puoi eseguire test semplici per determinare quale software antivirus ha un maggiore effetto sulle prestazioni delle operazioni di caricamento e salvataggio dell'emulatore.
Alcuni software antivirus potrebbero non essere compatibili con l'emulatore Android.
Se utilizzi il software Avast e hai difficoltà a eseguire Android Emulator, disattiva Usa la virtualizzazione nidificata quando disponibile e Attiva la virtualizzazione assistita dall'hardware nelle impostazioni di Risoluzione dei problemi di Avast. Inoltre, dopo aver disattivato la virtualizzazione hardware di Avast, assicurati che HAXM sia configurato correttamente con una reinstallazione completa dell'ultima versione di HAXM da SDK Manager.
Su Windows, a volte l'AVD si blocca con HAXM e il problema può essere risolto disinstallando completamente McAfee.
Windows: RAM libera e addebito commit
Quando l'emulatore si avvia, deve inizializzare la RAM del sistema operativo ospite Android. Su Windows, l'emulatore richiede che Windows tenga conto delle dimensioni complete della memoria guest all'avvio, anche se durante il funzionamento effettivo, la memoria potrebbe essere paginata su richiesta. L'emulatore richiede l'intera quantità di memoria guest all'ora di inizio perché Windows è prudente nel garantire che siano disponibili RAM fisica e file di paging sufficienti per contenere l'intero potenziale working set. Questa richiesta si prepara al caso peggiore, in cui tutta la memoria guest viene toccata rapidamente senza alcuna opportunità di eliminare o liberare memoria.
A volte, quando l'emulatore chiede a Windows di tenere conto di questa dimensione della memoria guest completa, la richiesta supera l'attuale limite di commit, ovvero la somma della RAM fisica e del file di paging disponibili. In questo caso, Windows non può garantire che il working set nel caso peggiore rientri nella RAM fisica o nel file di paging e l'emulatore non si avvia.
Nei casi tipici, la quantità di spazio su disco rigido allocato per il file di paging più la RAM fisica è più che sufficiente per la maggior parte dei casi d'uso dell'emulatore. Tuttavia, se si verificano errori di avvio dell'emulatore a causa del superamento del limite di commit, ti consigliamo di esaminare l'addebito di commit corrente, che può essere visualizzato nella scheda Prestazioni di Gestione attività di Windows. Per aprire Task Manager, premi Ctrl+Maiusc+Esc.
Per ridurre la probabilità di superare il limite di commit in vari modi:
- Libera RAM fisica prima di avviare l'emulatore chiudendo applicazioni e file inutilizzati.
- Disattiva le utilità di gestione e compressione della memoria di terze parti. Queste utilità possono causare in modo inefficiente un addebito per commit in eccesso e avvicinare il sistema al limite di commit.
Utilizza una dimensione gestita dal sistema per il file di paging di Windows, che può aumentare in modo più flessibile e dinamico le dimensioni del file di paging e quindi il limite di commit in risposta all'aumento della domanda dell'emulatore e di altre applicazioni.
Per saperne di più sugli addebiti per impegno e sul motivo per cui un'impostazione flessibile è la soluzione migliore, leggi questo articolo di Microsoft.
Il multitocco non funziona nella finestra degli strumenti
I gesti multitocco, incluso lo spostamento con due dita, non funzionano quando l'emulatore è in esecuzione in una finestra degli strumenti. Per attivare il multitocco, avvia l'emulatore in una finestra separata.
L'emulatore peggiora l'uscita audio Bluetooth
Se utilizzi cuffie Bluetooth, potresti notare che l'output audio delle cuffie Bluetooth peggiora quando l'emulatore è in esecuzione (problema 183139207). Questo accade perché quando l'emulatore viene avviato, attiva il microfono delle cuffie, il che fa sì che le cuffie cambino la modalità duplex con qualità ridotta.
Per evitare questo problema, disattiva il microfono nell'emulatore aggiungendo
hw.audioInput=no
al file config.ini
di Android Virtual Device (AVD).
Per trovare il file config.ini
di un AVD, vai all'AVD in Device Manager, fai clic sul menu overflow e seleziona Mostra su disco.
Impossibile avviare Android Virtual Devices su ChromeOS
Su ChromeOS, l'avvio degli Android Virtual Devices (AVD) potrebbe non riuscire perché la dipendenza
libnss3
non è presente. Per avviare correttamente gli AVD, esegui
sudo apt install libnss3
per installare manualmente la libreria libnss3
.
Avvisi del sensore di inclinazione del polso su Wear OS
Su Wear OS, l'emulatore potrebbe registrare ripetutamente il seguente messaggio relativo
al sensore di inclinazione del polso:
the host has not provided value yet for sensorHandle=16
Gli sviluppatori possono ignorare questi avvisi.
Finestra dell'emulatore incorporata troppo piccola
Sulle macchine con risoluzione inferiore, ad esempio 1024x768, può essere difficile leggere lo schermo dell'emulatore quando viene eseguito in una finestra degli strumenti in Android Studio. Per dare più spazio all'emulatore, chiudi la finestra degli strumenti Device Manager se è aperta. Puoi anche estrarre la finestra dell'emulatore da Android Studio. Per farlo, nella finestra dell'emulatore, fai clic su Impostazioni > Modalità di visualizzazione e seleziona Finestra anziché Dock bloccato.
Problemi grafici
Android Emulator funziona lentamente dopo un aggiornamento
Diversi fattori esterni possono causare un rallentamento dell'esecuzione di Android Emulator dopo un aggiornamento. Per iniziare la risoluzione dei problemi, ti consigliamo di seguire questi passaggi:
- Se hai una GPU Intel (e in particolare Intel HD 4000), assicurati di aver scaricato e installato l'ultimo driver grafico Intel.
- Se il tuo computer ha sia una GPU Intel sia una GPU discreta, disattiva la GPU Intel in Gestione dispositivi per assicurarti di utilizzare la GPU discreta.
- Esegui l'emulatore utilizzando la modalità
-gpu swiftshader
. Per ulteriori informazioni sulla configurazione delle opzioni di accelerazione grafica dalla riga di comando, consulta Configurare l'accelerazione hardware. - Assicurati che il router non utilizzi indirizzi IPv6 se non disponi di una connessione IPv6.
Se continui a riscontrare problemi con l'esecuzione lenta di Android Emulator, segnala un bug e includi i dettagli necessari di Android Emulator per consentirci di effettuare accertamenti.
Errore: impossibile trovare vulkan-1.dll
Se l'emulatore non viene avviato a causa dell'errore vulkan-1.dll cannot be found
,
probabilmente devi aggiornarlo. Per aggiornare l'emulatore in Android
Studio, vai a Strumenti > SDK Manager e installa l'ultima versione stabile della
piattaforma Android.
In alternativa, se non hai bisogno di app che utilizzano la libreria grafica Vulkan, disattiva Vulkan avviando l'emulatore dalla riga di comando con il flag -feature -Vulkan
.
Impossibile creare uno snapshot
La creazione di uno snapshot dell'emulatore che include la libreria grafica Vulkan non è supportata. Per eseguire l'emulatore senza Vulkan,
avvialo dalla riga di comando
con il flag -feature -Vulkan
. In alternativa, puoi disinstallare ed evitare
di utilizzare app con Vulkan, come Chrome su API 30 o versioni successive, se vuoi utilizzare
gli snapshot come parte del flusso di lavoro di sviluppo.
Impossibile aprire correttamente la pagina web
A partire dal livello API 30, Chrome utilizza la libreria grafica
Vulkan come backend di rendering e potrebbe presentare problemi di compatibilità su alcune
macchine. Se Chrome non viene visualizzato correttamente, prova a
avviare l'emulatore dalla riga di comando
con il flag -feature -Vulkan
.
Avviso relativo al driver GPU - Ritorno al software
Se ricevi un avviso relativo al fallback del driver GPU, potresti utilizzare una GPU non supportata. Per impostazione predefinita, utilizza l'opzione automatica, che potrebbe scegliere il rendering software. Se scegli l'hardware, dovresti essere in grado di forzarlo a utilizzare il rendering hardware (potrebbe comunque visualizzare un messaggio di avviso).
Per le immagini non Play Store, puoi farlo in Gestione dispositivi -> 3 puntini -> Modifica. Per le immagini del Play Store, devi modificare manualmente questi due file di configurazione:
~/.android/your_avd_name.avd/config.ini
~/.android/your_avd_name.avd/hardware-qemu.ini
e modifica hw.gpu.mode
in host
Tieni presente che questa operazione potrebbe ridurre la stabilità dell'emulatore. Per ulteriori dettagli, consulta il bug.
L'emulatore non si avvia su Chrome Remote Desktop per Windows
Se l'emulatore non si avvia durante l'utilizzo di Chrome Remote Desktop su Windows, la soluzione alternativa attualmente consigliata è utilizzare il flag -gpu, ad esempio -gpu host o -gpu swiftshader.
L'emulatore è stato chiuso con il codice di uscita -1073741511 (Windows 8.1 o Windows 10 N)
Il motivo è probabilmente dovuto al fatto che nel tuo sistema (ad es. C:\Windows\System32 (sistema a 64 bit)) manchino i file msvcp140.dll, msvcp140_1.dll e msvcp140_2.dll. In passato, gli utenti che hanno segnalato questo problema sono riusciti a risolverlo installando (o reinstallando) Windows Media Feature, che è facoltativo nelle versioni N di Windows 10.
Un problema simile si verifica anche con Windows 8.1.
Consulta il sito web di Microsoft per scoprire come installare la funzionalità Windows Media.
Tieni presente che Windows 8.1 non è più supportato, non solo da Android Studio e dall'emulatore Android, ma anche da Microsoft (dal 2023). Un commento simile può essere fatto anche con Windows 10, in quanto Microsoft ha annunciato che il supporto per Windows 10 terminerà il 14 ottobre 2025. Sebbene comprendiamo la necessità di una soluzione su Windows 8.1/Windows 10, il continuo sviluppo e supporto di sistemi operativi meno recenti presenta sfide che possono influire sulla stabilità e sulle prestazioni dell'emulatore per la maggior parte dei nostri utenti.
Come potenziale soluzione alternativa (ma non supportata), se non riesci ad aggiornare il tuo sistema operativo, puoi provare a trovare una versione precedente dell'emulatore Android nel nostro archivio (https://developer.android.com/studio/emulator_archive, l'ultima versione stabile è la 32.1.11) che potrebbe essere compatibile con Windows 8.1. Tieni presente che queste versioni precedenti non sono supportate e potrebbero non funzionare correttamente. Ti sconsigliamo vivamente di utilizzarle con versioni più recenti di Android (come l'API 34 e successive).
Per un'esperienza ottimale con l'emulatore Android, ti consigliamo di eseguire l'upgrade a un sistema operativo supportato.
Ci scusiamo per gli eventuali disagi arrecati.
L'emulatore si comporta in modo errato su macOS in modalità di rendering hardware
Sui dispositivi Mac con Apple Silicon, l'emulatore utilizza la libreria
MoltenVK per l'API Vulkan quando
è selezionata la modalità di rendering hardware. Sebbene MoltenVK offra in genere prestazioni molto migliori, la libreria non supporta tutte le funzionalità di Vulkan. In caso di
problemi di compatibilità, come errori di compilazione degli shader, problemi grafici o
arresti anomali nelle app, cambia la modalità di rendering in software
tramite le impostazioni AVD o utilizza l'argomento della riga di comando -gpu swiftshader
.
In alternativa, puoi disattivare il supporto di Vulkan con l'argomento-feature -Vulkan
per continuare a utilizzare l'accelerazione hardware nelle app GLES.
Problemi di rete
Nessuna connessione a internet: non è possibile trovare l'indirizzo del server DNS
Se l'emulatore non riesce a connettersi a internet, prova a
avviarlo dalla riga di comando
utilizzando l'opzione
-dns-server “2001:4860:4860::8844,2001:4860:4860::8888,8.8.8.8,8.8.4.4”
. Questo
comando fornisce un elenco separato da virgole di indirizzi IP DNS pubblici di Google. Per
maggiori informazioni su Google Public DNS, consulta
Google Public DNS per i tuoi dispositivi.
Nessuna connessione a internet: problemi di risoluzione DNS
A volte gli indirizzi DNS nel file /etc/resolv.conf
non funzionano correttamente.
Puoi risolvere questo problema
avviando l'emulatore dalla riga di comando
utilizzando l'opzione -dns-server 8.8.8.8
o -dns.server 2001:4860:4860::8888
per
connettersi tramite una rete solo IPv6.
Problemi precedenti (su emulatori deprecati o sistemi precedenti)
Impossibile avviare AVD
Un AVD potrebbe non essere avviato se esiste un report sugli arresti anomali per un emulatore più recente
(problema n. 281725854). Questo
problema si verifica solo per gli utenti che eseguono l'aggiornamento dalla versione canary 33.x alla 32.1.13,
hanno avuto un arresto anomalo l'ultima volta che hanno eseguito la versione 33.x e non hanno riavviato
il proprio AVD da allora, quindi la directory %TEMP%
o /tmp
è ancora attiva. Se
riscontri questo problema, prova a cancellare la directory %TEMP%
(/tmp
su
Linux o macOS).
Windows: l'emulatore non viene avviato se il nome dell'AVD contiene caratteri Unicode
Su Windows, quando Gestione dispositivi crea un Android Virtual Device (AVD), per impostazione predefinita crea l'AVD in C:\Users\<name>\.android\avd
. Tuttavia, se il nome dell'AVD (<name>
) contiene Unicode, l'emulatore non può avviare l'AVD correttamente utilizzando questa posizione predefinita.
Questo problema è stato risolto nell'emulatore 31.3.6 e versioni successive. Per risolvere il problema, aggiorna l'emulatore selezionando Strumenti > SDK Manager.
In alternativa, per risolvere il problema, imposta la variabile di ambiente
ANDROID_SDK_HOME
su una directory personalizzata prima di creare un AVD. Ad esempio,
crea la directory C:\Android\home
, quindi imposta ANDROID_SDK_HOME
su questa
directory appena creata. Per saperne di più, consulta Variabili di
ambiente.
Gli hypervisor non possono emulare determinate funzionalità della CPU richieste dai sistemi Android x86
Gli hypervisor in genere non possono emulare determinate funzionalità della CPU, come Streaming SIMD Extensions (SSE), richieste dai sistemi Android x86.