GNU/Linux: aceleración hardware para el emulador de Android

Probando web en el emulador de dispositivos Android.

Hoy traigo un pequeño howto para activar y disfrutar la aceleración hardware con el emulador de móviles Android. Parte del post también sirve para disfrutar de esta aceleración con otro software de virtualización como VirtualBox o VMWare. También traigo cómo tener disponible en el escritorio accesos directos a los móviles emulados que necesites. Así no hay que arrancar el Android Studio completo si estás programando webs, también podrás probar todo el Javascript que use funciones de dispositivos móviles como cámara, GPS, conectividad, etc.. y también sirve para probar PWAs!

Este post contiene los pasos probados para GNU/Linux compatible con Debian, o derivados como Ubuntu, Ubuntu Mate, etc.

Al grano, instalando Android Studio

Lo primero que todo es descargarnos el Android Studio de la página oficial para la distribución que nos corresponde:
https://developer.android.com/studio

Lo siguiente es descomprimirlo y entrar a lanzar el estudio completo:

unzip
./android-studio/bin/studio.sh

Configurando varios dispositivos Android virtuales emulados

Lo siguiente al arrancar el Android Studio es entrar al AVD, que es el Android Virtual Devide Manager. Para esto desplegamos en la siguiente ventana, y abrimos:

Si ya estamos dentro del Android Studio podemos ir a la sección de Tools > AVD Manager y llegaremos a la misma sección de administración de los dispositivos virtuales siguiente:

Activando la aceleración hardware en la BIOS

Una vez dados de alta los dispositivos los podremos arrancar, pero si no tenemos la aceleración hardware activada, y los paquetes de GNU/Linux, no funcionará todo lo mejor posible.

Para esto hay que habilitar en la BIOS las opciones avanzadas de aceleración hardware para la virtualización. Pondrá algo parecido a VT-X, AMD-V, virtual aceleration, o algo parecido.

Después de esto habrá que guardar los cambios en la BIOS y reiniciar.

Instalando los paquetes de software para GNU/Linux

Con lo siguiente podemos ver si la virtualización hardware está activada en el procesador. Para esto con lo siguiente podemos instalar el software para comprobarlo y lo lanzamos:

sudo apt install cpu-checker
./kvm-ok

Deberíamos de ver algo parecido a lo siguiente:

Ok, la aceleración hardware para virtualizar dispositivos está disponible. Vamos a instalar unos paquetes más para hacer que el emulador de Android pueda disfrutar de esta aceleración haciendo lo siguiente:

sudo apt install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils

Sólo falta que nuestro usuario tenga permiso de acceso a /dev/kvm añadiéndole a los grupos donde debe estar así:

sudo adduser tuUsuario libvirt
sudo adduser tuUsuario kvm

Ahora tenemos que cerrar sesión y volver a entrar, para que se apliquen los permisos de grupo nuevos.

Accesos directos desde el escritorio Gnome

Ya sólo queda para los accesos directos decir que tenemos los siguientes comandos disponibles desde terminal:

./Android/Sdk/emulator/emulator -help
./Android/Sdk/emulator/emulator -list-avds
./Android/Sdk/emulator/emulator -avd Pixel_2_API_28

Con el último comando lo que hacemos es arrancar el dispositivo virtual llamado Pixel_2_API_28. Este comando es el que nos interesa para hacer enlaces directos en el escritorio. Entonces en el escritorio podemos crear accesos directos con el botón derecho, poniendo el comando anterior.

O si no podemos también crear un fichero .desktop en nuestro directorio del Escritorio con un contenido parecido al siguiente:

#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon=/home/usuario/android-studio/bin/studio.png
Icon[es_ES]=/home/usuario/android-studio/bin/studio.png
Exec=./Android/Sdk/emulator/emulator -avd Pixel_2_API_28
Name[es_ES]=Google Pixel 2
Name=Google Pixel 2

Esto es todo, si has llegado hasta aquí y echas en falta algo no dudes en dejar un comentario aquí abajo. ¡Un saludo!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *