emulatore di Android è basato su QEMU. Posso usare KVM con esso?
-
25-09-2019 - |
Domanda
Il mio virtualizzazione supporti portatili hardware (AMD SVM) e so che:
- QEMU può fare uso della virtualizzazione hardware attraverso KVM;
- L'emulatore di Android si basa molto su QEMU
domanda naturale segue:? Posso combinare le due cose (Android + KVM) per ottenere migliori prestazioni nell'emulatore
Soluzione
Sì, è possibile. Basta scaricare le appropriate pacchetti CPU Atom di Intel nel SDK Android e avere il vostro AVD utilizzare un'architettura CPU Atom di Intel. L'emulatore di Android può anche utilizzare la GPU host. Ecco un link su come farlo:
http://developer.android.com/tools/devices/emulator.html#acceleration
Altri suggerimenti
Si può provare a utilizzare AndroidVM - http://androvm.org/blog/ ... In il mio test si può avere hardware OpenGL e supporto di rotazione e (questo è un po 'contorto, ma tutto è spiegato nella pagina AndroidVM).
Nella mia esperienza questo è miglia meglio di Android SDK emulatore, almeno su Windows e Mac.
Per Linux, si dovrebbe essere in grado di utilizzare VirtualBox per Linux da usare AndroidVM. Poiché si tratta di un file OVA soprattutto, si dovrebbe essere in grado di utilizzare altri client di virtualizzazione come necessario.
La cosa interessante è che questo non è emulare ARM, è Android su x86 ... che ha pro e contro, ma sicuramente aiuta a non dover acquistare una tonnellata di dispositivi se si può fare il test iniziale di vario genere su virtuale macchine, dal momento che Android 4.1 non è generalmente troppo pesantemente modificati dai produttori attraverso ARM e x86 telefoni e tablet, ecc (IMO).
È possibile eseguire Android-x86 in QEMU con KVM (o anche in VirtualBox). Io non sono sicuro di come sarebbe facile da configurare per lo sviluppo, ma dovrebbe funzionare un po 'più veloce. Inoltre, Intel sono lavorare su ottenere Android sui propri chip x86 in modo tale si spera diventerà più facile in futuro.
Aggiornamento: sono riuscito a farlo funzionare in VirtualBox, ad eccezione di alcuni siti in crash il browser web. Dal momento che stavo facendo una web app, questo non è stato utile. E 'stato molto più veloce rispetto l'emulatore standard di Android, però,
Non strettamente legato alla risposta che cercate, ma
- uso
Run
quando si lavora sulla vostra interfaccia, o il più possibile durante la codifica (è molto più veloce rispetto al debug, anche 10 volte più veloce) - cercare di ridurre al minimo le piste
Debug
, imparare a codice perfetto, in modo da utilizzare meno Debug. - probabilmente già sapete, non è necessario chiudere l'emulatore per ogni sessione di corsa, in modo da tenerlo aperto.
- riavviare Eclipse dopo un'ora di utilizzo, ma mantenere l'emulatore aperto. E 'più veloce di riavviare Eclipse rispetto alla emulatore.
- ricordare il progetto ultimo run , in modo che il lancio è fatto tramite un solo click
Google TV emulatore che si rivolge a 86 supporta la modalità di virtualizzazione KVM .
ARM non è ancora lì. Credo che sia attualmente work-in-progress.