Este tutorial sirve para las distribuciones Ubuntu y sus derivadas.


Hace tiempo que había escuchado hablar de Anbox, pero hasta hoy no me había puesto a probarlo. Así que he aprovechado para explicar como lo he hecho y compartirlo con vosotrxs.

anbox, instalar anbox en ubuntu linux

Para empezar pegaré la definición de Wikipedia Anbox:

“Anbox es una capa de compatibilidad de código abierto y libre que tiene como objetivo permitir que programas (software de aplicación y juegos) desarrollados para Android se ejecuten en otros sistemas operativos basados en Linux.”

Una de las características que más me ha interesado es que a diferencia de otros proyectos como Shashlik o Genimobile, Anbox ejecuta el sistema Android en el mismo kernel/núcleo que nuestro ordenador, sin la necesidad de emularlo como lo hacen los otros, todo se ejecuta directamente en el hardware.

Lo que he hecho para la instalación ha sido seguir los pasos de la documentación. Por lo tanto lo que os explicaré serán los pasos de la documentación y la solución a los problemas que me he encontrado.

Instalar Anbox

Empezaremos instalando el paquete snapd, dado que Anbox sólo se distribuye oficialmente como paquete Snap:

Una vez instalado, ya podemos empezar a instalar Anbox:

Quizás te estés preguntando el motivo del “–devmode”, esto es así porque el paquete snap de Anbox todavía no esta terminado. También por esto Anbox no se actualizará automáticamente y tendremos que actualizarlo con este comando:

Para que Anbox funcione, el kernel necesita unos módulos especiales de Anbox. Por ello, añadiremos el PPA de Anbox e instalaremos los módulos:

Si tienes un kernel que no es el predeterminado, instala el correspondiente paquete header para tu kernel.

Ahora activamos los módulos:

Puede que al activar los módulos, nos salga un error como este:

Para solucionarlo, debemos desactivar el Secure Boot desde la BIOS y volver a intentarlo.

Si todo ha salido bien, ejecutamos esto:

Y deberíamos tener una salida como esta:

anbox modules
Si nos fijamos antes de activarlos, todavía no existen los nodos en /dev

Ahora reiniciamos.

Instalar aplicaciones en Anbox

Para instalar las aplicaciones utilizaremos ADB (herramienta para comunicarte con un emulador/dispositivo Android):

Ahora sólo tendremos que descargar el APK de la aplicación que queramos instalar. F-Droid tiene un buen catalogo de aplicaciones libres. Yo he descargado unos cuantos APKs y los he instalado de la siguiente manera:

Lo mas seguro es que os salte este error o algo por el estilo:

adb device not found Anbox

Esto es porque todavía no hemos iniciado Anbox y éste no esta disponible para la conexión ADB. Lo podemos iniciar como una programa cualquiera desde el menú de aplicaciones buscando ‘anbox’ o ejecutándolo desde el terminal:

anbox installing apk adb issue
Como se puede observar, antes de iniciar ‘anbox.appmgr’, la lista (adb devices) de dispositivos ADB esta vacía.

Ahora ya sabemos instalar la aplicaciones mediante ADB. Las aplicaciones instaladas se añadirán automáticamente a Anbox.

Truco para instalar aplicaciones sin comandos

Si lo que queremos es instalar las aplicaciones directamente sin comandos. Seguro que se os ha ocurrido instalar F-Droid y desde ahí utilizarla como si de un móvil se tratara.

Con todo lo que hasta aquí hemos aprendido, seguro que ya sabéis hacerlo solos. Sólo tenemos que descargar el APK de F-Droid, instalarlo vía ADB y con la aplicación instalada ya podemos instalar todas las aplicaciones que queramos haciendo clics 🙂 .

anbox install with f-droid

Solucionar otros errores

Error “…service is not running yet”

Este error lo encontramos al intentar iniciar Anbox

La solución fue reiniciar/iniciar el servicio tal y como nos dice el mensaje:

fix [daemon.cpp:59@Run] Application manager service is not running yet anbox

Mi experiencia

Después de instalar unas 15 aplicaciones, tres de ellas al iniciarlas se quedan con la ventana en negro y una de ellas (SuperTuxKart) no me ha dejado instalarla debido a que no es compatible con la arquitectura del procesador de mi ordenador, me saltaba esto:

Para solucionarlo, podéis buscar en internet el error y encontraréis algo relacionado con libhoudini (es una capa para que los procesadores x86 puedan ejecutar ordenes para arquitecturas ARM). Cuando tenga tiempo miraré cómo solucionar este error, y quizás haga otro artículo o actualice éste. Si tenéis problemas, lo mas sencillo, es mirar si hay un APK de la aplicación para arquitecturas x86.

Por último, quiero remarcar que yo no he podido reproducir ni audio ni video con las aplicaciones de Anbox.

Si tenéis alguna duda podéis preguntar por los comentarios o por el grupo de Telegram de LiGNUx @liGNUx. Hasta pronto.

37
Deja una respuesta

avatar
12 Hilos de comentario
25 Respuestas de hilo
13 Seguidores
 
Comentario más reaccionado
El hilo de comentarios más caliente
14 Autores de comentarios
Alexander XymarosxymarosCesar Espinosatfathinotsuke Autores de comentarios recientes
  Suscribirse  
Los más recientes Los más antiguos Más votados
Notificarme las
Alexander Xymaros
Miembro
Alexander Xymaros

Excelente guía, de verdad muy agradecido a Wakutiteo.
Incluso le pedí apoyo para resolver un problema que tuve con la instalación y me ayudó muy paciente y amablemente.
Inmensamente agradecido.

Cesar Espinosa
Invitado
Cesar Espinosa

Ayuda!
Tengo problema cuando ejecuto lo siguiente:
ls -1 /dev/{ashmem,binder}

Me sale lo siguiente:
ls: no se puede acceder a ‘/dev/binder’: No existe existe el archivo o el directorio
/dev/ashmen

Con esto supongo que /dev/ashmen si existe, pero /dev/binder no.
Probablemente fue por que ejecute el siguiente comando sin razonarlo:
sudo add-apt-repository ppa:morphis/anbox-support
sudo apt update
sudo apt install linux-headers-generic anbox-modules-dkms
Ya que no entendí y no vi a tiempo (quizá por el color de letra) la siguiente explicación:
“Si tienes un kernel que no es el predeterminado, instala el correspondiente paquete header para tu kernel.”
Estoy suponiendo que quiza esas lineas no aplicaban para mi caso.
Entonces, si esto es asi, ¿COMO PUEDO REVERTIRLO?. ¿O como puedo continuar con la instalación y utilización de Andbox?

Tengo
Sistema operativo: Kubuntu 19.04
Versión de KDE Plasma: 5.15.4
Versión de KDE Frameworks: 5.56.0
Versión de Qt: 5.12.2
Versión del kernel: 5.0.0-20-generic
Tipo de OS: 64 bits
Procesadores: 2 × Intel® Celeron® CPU 1005M @ 1.90GHz
Memoria: 3.7 GiB de RAM

Por tu ayuda
GRACIAS

Cesar Espinosa
Invitado
Cesar Espinosa

Soy nuevo en esto, creo que me equivoque en la explicación de mi problema.

Checando en el historial de la terminal no aparece ejecutada la linea que dices:
sudo apt install linux-headers-generic anbox-modules-dkms

Aunque crei haberla ejecutado por que puse en la terminal las 3 lineas de comando al mismo tiempo:
1 sudo add-apt-repository ppa:morphis/anbox-support
2 sudo apt update
3 sudo apt install linux-headers-generic anbox-modules-dkms

En mi terminal aparece ejecutada solo la primera linea, asi:
[email protected]:~$ sudo add-apt-repository ppa:morphis/anbox-support

More info: https://launchpad.net/~morphis/+archive/ubuntu/anbox-support
Press [ENTER] to continue or Ctrl-c to cancel adding it.

Obj:1 http://mx.archive.ubuntu.com/ubuntu disco InRelease
Obj:2 http://security.ubuntu.com/ubuntu disco-security InRelease
Des:3 http://ppa.launchpad.net/morphis/anbox-support/ubuntu disco InRelease [15.4 kB]
Obj:4 http://mx.archive.ubuntu.com/ubuntu disco-updates InRelease
Obj:5 http://mx.archive.ubuntu.com/ubuntu disco-backports InRelease
Des:6 http://ppa.launchpad.net/morphis/anbox-support/ubuntu disco/main amd64 Packages [484 B]
Des:7 http://ppa.launchpad.net/morphis/anbox-support/ubuntu disco/main i386 Packages [484 B]
Des:8 http://ppa.launchpad.net/morphis/anbox-support/ubuntu disco/main Translation-en [268 B]
Descargados 16.6 kB en 2s (8 798 B/s)
Leyendo lista de paquetes… Hecho
[email protected]:~$ sudo modprobe ashmem_linux
[email protected]:~$ sudo modprobe binder_linux
[email protected]:~$ ls -1 /dev/{ashmem,binder}
ls: no se puede acceder a ‘/dev/binder’: No existe el archivo o el directorio
/dev/ashmem

¿Como procedo? ¿Sigo instalando las 2 lineas que faltan? O ¿a que crees que se deba que tengo el error “ls: no se puede acceder a ‘/dev/binder’: No existe el archivo o el directorio”?

tfat
Invitado
tfat

Lamentablemente linux te hace todo mas complejo por ello no ha tenido tanta aceptación

hinotsuke
Invitado
hinotsuke

me descarge el gacha life

Elena
Invitado
Elena

Hola, me gusta mucho como explica todo pero me surgen errores y no consigo poder usar el emulador, podría ayudarme?
Primero indicar que mi so es Linux Ubuntu 16.04 32Bits

El primer error que me da es :
sudo snap install –devmode –beta anbox

error: snap “anbox” is not available on beta for this architecture (i386) but exists on other architectures (amd64)

este error que ya indicabas que nos podia pasar….

adb install FDroid.apk
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
error: device not found
– waiting for device –

lo que pasa es que al intentar el siguiente

anbox.appmgr
anbox.appmgr: no se encontró la orden

No consigo continuar, ni para poder instalar el F-Droid ni ninguno posterior… podrias ayudarme?

Muchas gracias