Herramientas de usuario

Herramientas del sitio


informatica:software:waydroid

Waydroid

Ejecuta Android en sistemas Linux (arm, arm64, x86 y x86_64) con entornos Wayland (es posible hacer un apaño para usar en X11).

Características

  • Código abierto.
  • Arquitectura basada en contenedores: usa Linux Containers (LXC) para aislar Android sin necesidad de virtualización, reduciendo el consumo de recursos.
  • Soporte para Wayland aunque también funciona en X11.
  • Modo Ventana o Pantalla Completa
  • Acceso directo al hardware
  • Compatibilidad con cámaras, micrófono, Bluetooth, GPS, giroscopio y rotación automática de pantalla.
  • Bajo consumo de recursos (alto rendimiento, casi nativo).
  • Soporte para Google Play Services (opcional), para acceder a la Play Store y servicios de Google.
  • Compatibilidad con apps ARM: Usa un sistema de traducción binaria (libhoudini) para ejecutar apps diseñadas para ARM en CPUs x86_64.
  • Soporte multi-ventana: ejecuta varias apps de Android simultáneamente en ventanas independientes.
  • Imagen de Android basada en LineageOS.

Uso en X11

Waydroid está diseñado para ser utilizado en Wayland, pero podemos realizar los siguientes pasos para usarlo en X11.

Instalamos weston. Iniciamos weston en una sesión X:

weston --socket=mysocket

Inicializar Waydroid

Si queremos tener las Google Apps:

sudo waydroid init -f -s GAPPS

Si no queremos tener las Google Apps:

sudo waydroid init

Uso de Waydroid

Arrancar:

waydroid show-full-ui

Detener:

waydroid session stop

Lanzar aplicaciones

Una sesión de Waydroid debe estar iniciada (waydroid session start).

waydroid app launch nombre.paquete.app

Por ejemplo, si queremos abrir el navegador Google Chrome:

waydroid app launch com.android.chrome

Podemos saber el nombre del paquete si lo buscamos en la web de Google Play: https://play.google.com/. El nombre del paquete podemos verlo en la URL después de id. Por ejemplo, Google Chrome tiene la siguiente URL https://play.google.com/store/apps/details?id=com.android.chrome, así que el nombre del paquete es com.android.phone.

Algunos ejemplos de aplicaciones gratuitas:

Aplicación Nombre del paquete
Telegram org.telegram.messenger
WhatsApp com.whatsapp
Stellarium com.noctuasoftware.stellarium_free
Google Earth com.google.earth
Aves Galería deckers.thibault.aves
Material Files me.zhanghai.android.files
Librera com.foobnix.pdf.reader
VLC org.videolan.vlc
Etar ws.xsoh.etar
WireGuard com.wireguard.android
AntennaPod de.danoeh.antennapod
Lemuroid com.swordfish.lemuroid
Mi DGT com.dgt.midgt

Falsear arquitectura

Si usamos Waydroid en un equipo Intel o AMD, detectará arquitectura x86_64, y o podremos instalar aplicaciones creadas para ARM.

Esto lo sabremos si desde Play Store vemos un mensaje como:

"This app won't work for your device."

Existen scripts para “engañar” y hacer que detecten más arquitecturas como armeabi, armeabi-v7a y , arm64-v8a. Usaremos Waydroid Extras Script: https://github.com/casualsnek/waydroid_script

En sistemas Arch Linux lo tendremos disponible a través del paquete de AUR waydroid-script-git.

Al ejecutarlo, podemos elegir la versión de Android a emular y después de elegir la opción Install, elegiremos libhoudini y confirmaremos para que el script haga su trabajo.

Al arrancar de nuevo Waydroid, ya podremos instalar cualquier aplicación de Android compilada para cualquier arquitectura.

Waydroid Extras Script

Script para añadir cosas interesantes a Waydroid: https://github.com/casualsnek/waydroid_script

Con este script podremos:

  • Instalar las Google Apps
  • Elegir entre Android 11 y Android 13
  • Instalar libhoudini para tener multiarquitectura (soporte ARM).
  • Instalar Magisk para la gestión de permisos root.
  • Instalar Smart Dock para lograr una apariencia de escritorio.

Google Play Certification

Si lanzamos Waydroid con GAPPS, Android se quejará de que el dispositivo no está certificado por Google Play Protect. Para solucionarlo, podemos seguir las instrucciones en pantalla o seguir estos pasos:

  • Abrir un terminal
  • Ejecutar: sudo waydroid shell -- sh -c "sqlite3 /data/data/*/*/gservices.db 'select * from main where name = \"android_id\";'"
  • Copiar los números que aparecen en la caden de texto mostrada
  • Entrar en https://www.google.com/android/uncertified con nuestra cuenta de Google.
  • Pegar los números obtenidos en el segundo paso
  • Cuando se confirmen los cambios, reiniciamos Waydroid: waydroid session stop.
informatica/software/waydroid.txt · Última modificación: por tempwin