Da sviluppatore avevo bisogno di un Android Virtual Device che rispecchiasse il Samsung Galaxy S4, quindi parto creandomi il device con risoluzione, dimensioni schermo e via dicendo e inciampo nel primo problema: schermo nero, non si vede nulla, emulatore vuoto, nada…

Cerco in rete e toh, su stackoverflow trovo la risposta; abilitando l’accelerazione video tramite GPU (Use Host GPU) finalmente l’emulatore parte.

host_gpu

Tutto sembra funzionare ma…

…ma alla fine non è che funzioni così bene visto che la UI non viene scalata correttamente. Lo stesso thread in stackoverflow spiega che l’Android SDK Tools (si parla della versione 21.1 ma noto questa cosa anche con l’ultimo 22.0.4) ancora non supporta la risoluzione xxhdpi, quindi è necessario fare l’override della densità dello schermo dopo aver avviato l’emulatore:

adb shell setprop qemu.sf.lcd_density 480
adb shell stop
adb shell start

Questo riavvierà l’emulatore con i dpi corretti.
Il Galaxy S4 ha ~441ppi, gli stessi del Sony Xperia Z ed è proprio Sony a spiegarci come risolvere tutti questi problemi con l’emulatore, cosa che invece non ha fatto Samsung (nonostante sia l’azienda che vende più smartphone al mondo…).

Ecco la mia configurazione, se avete dubbi, problemi o consigli, commentate pure 😉
s4_avd

Device Definition:
Screen Size (in) = 4.9
Resolution(px)   = 1080x1920
RAM (MiB)        = 2048
Size             = Normal
Screen Ration    = notlong
Density          = xxhdpi
Buttons          = Hardware
Android Virtual Device:
Target API       = Android 4.2.2 - API Level 17
RAM              = 2048 MB
Internal Stotage = 200 MB
Heap             = 64
Processing your request, Please wait....