Procedimientos de instalación y solución de problemas de Android x86

Para los usuarios que desean tener una experiencia de Android en su escritorio, existen varios sistemas operativos basados ​​en Android; sin embargo, muchos de ellos son solo bifurcaciones de Android x86 (PrimeOS, Remix OS, Phoenix OS x86). Esto se debe a que Android x86 ralentizó el desarrollo por un tiempo y, por lo tanto, otros desarrolladores se ocuparon de su ausencia.

Sin embargo, Android x86 ha estado lanzando actualizaciones constantes últimamente, incluida una actualización de Android Oreo. Entonces, si desea disfrutar de una excelente experiencia de Android en su escritorio, es una buena idea probar Android x86 antes de probar una de las otras bifurcaciones (Remix OS ha detenido totalmente el desarrollo, por ejemplo).

Requisitos:

Si está en Ubuntu, puede obtener UNetbootin con el comando de terminal: sudo apt-get install unetbootin

Si está en Arch Linux, puede usar: pacman -S unetbootin

Instalación de la unidad flash USB

  1. Inicie UNetbootin y apúntelo a su archivo ISO x86 de Android.
  2. Ahora elija «Unidad USB» y haga clic en Aceptar.
  3. UNetbootin comenzará a copiar Android x86 a su unidad flash USB, convirtiéndolo en un instalador portátil.
  4. Cuando se complete el proceso, reinicie su computadora e inicie en el menú de su BIOS.
  5. Encuentre la página en su BIOS que le permite arrancar directamente desde un medio específico (HDD, CD, USB, etc.).
  6. Elija arrancar directamente desde la unidad flash USB.
  7. Aparecerá un menú de GRUB, elija instalar Android x86 en su disco duro.
  8. Ahora deberá elegir una partición para instalar; si no está seguro, no formatee la partición. Tampoco sobrescriba su otra partición del sistema operativo, obviamente.
  9. Aparecerá un nuevo mensaje que le preguntará si desea instalar GRUB. Si está utilizando principalmente Windows sin otro sistema operativo Linux en su computadora, elija Sí. Si ya tiene un sistema operativo Linux / GRUB en su PC, es una pésima idea instalarlo encima.
  10. Aparecerá otro mensaje que le pedirá «Hacer sistema R/W». Elige sí. Esto «rooteará» Android x86 y habilitará el acceso de lectura y escritura a la partición /system.
  11. Reinicie su computadora y disfrute de su nueva instalación de Android x86.

Para instalación de CD/DVD

El proceso de instalación es casi exactamente el mismo, excepto que grabará un CD de arranque desde Android x86 ISO. Realmente hay una tonelada de quemadores ISO por ahí, podrías ir con Grabador ISO gratuito.

Instalación en una máquina virtual

  1. Configure su VM para tener un mínimo de 512 MB de RAM, aunque con el último Android x86 basado en Oreo, esto probablemente debería ser un poco más alto.
  2. Cargue el archivo ISO x86 de Android en el menú de su VM y cargue la VM.
  3. Aparecerá un menú de GRUB, elija instalar Android x86 en el disco duro.
  4. Cree una nueva partición e instale Android x86 en ella. Formatee la partición en uno de los formatos admitidos: ext3, ext2, ntfs y fat32. Tenga en cuenta que si elige fat32, aparecerá una advertencia de que no puede guardar datos en fat32; por lo tanto, Android x86 funcionará como un CD en vivo (no se guardarán datos en el sistema mientras lo esté utilizando).
  5. Elija «Sí» cuando le pida instalar el cargador de arranque GRUB y permita que haga que el sistema R/W habilite la raíz.
  6. Reinicie cuando todo esté hecho.

Agregar Android x86 al menú de GRUB

Instale GRUB Customizer primero, hará que este proceso sea mucho más fácil.

sudo add-apt-repository ppa:danielrichter2007/grub-customizer
sudo apt-get update
sudo apt-get install grub-customizer

Ahora inicie el personalizador de GRUB y agregue una nueva entrada de GRUB.

Haga clic en la pestaña ‘Fuentes’ e ingrese estos comandos:

set root="(hd0,4)"
search --no-floppy --fs-uuid --set=root e1f9de05-8d18-48aa-8f08-f0377f663de3
linux androidx86/kernel root=UUID=e1f9de05-8d18-48aa-8f08-f0377f663de3 quiet androidboot.hardware=generic_x86 SRC=/androidx86 acpi_sleep=s3_bios,s3_mode
initrd androidx86/initrd.img

Si se da cuenta, hemos resaltado algunas partes en negrita en esos comandos. Eso es porque necesita cambiarlos de la siguiente manera.

Para establecer raíz=»(hd0,4)’cambie (hd0,4) a la partición donde está instalado Android x86.

HD0 significa SDA, por lo que si instala Android x86 en SDB, será HD1, etc. El número posterior es el número de partición. Entonces, hd0,4 sería SDA4, por ejemplo: si instaló Android x86 en SDA6, lo cambiará a hd0,6.

por la parte –establecer=raíz e1f9de05-8d18-48aa-8f08-f0377f663de3, la cadena aleatoria es el UUID de la partición donde se instaló Android x86. Debe cambiarlo al UUID correcto. Puede obtener su UUID correcto creando una nueva entrada en el personalizador de GRUB, luego accediendo a la pestaña Opciones y eligiendo la opción ‘Linux’ del menú desplegable.

En el menú desplegable de partición, debe elegir su partición y luego ir a la pestaña Fuente. Mostrará su UUID.

Donde estamos en negrita androidx86/, esta es la raíz de Android x86. Debe cambiarlo a su raíz Android x86 real, ingresando a su partición Android x86. Debería ver una carpeta llamada ‘android’, y esa será la raíz de su instalación de Android x86.

androidboot.hardware va a ser su dispositivo específico. Si usa una versión anterior de Android x86, como las versiones de Android 4.03, debe cambiarla a androidboot_hardware (con un guión bajo _, no un punto .). Esto es completamente innecesario para las últimas versiones de Android x86. Cuando androidboot.hardware no está configurado en kernel cmdline, el proceso de inicio aún obtendría el valor correcto de ro.hardware. Esto elimina la necesidad de androidboot.hardware.

Aquí está la lista de hardware a la que puede cambiarlo:

  • generic_x86: si su hardware no está en la lista, use este
  • eeepc: computadoras portátiles EEEPC
  • asus_laptop: portátiles ASUS (sólo portátiles ASUS compatibles)

Consejos y trucos finales

Android x86 no puede usar Android Market, por lo que existen soluciones alternativas para obtener aplicaciones de Android.

Primero debe habilitar las fuentes desconocidas. Vaya a Configuración > Aplicaciones > habilite Fuentes desconocidas e ignore el diálogo de advertencia.

Ahora puede descargar e instalar APK desde fuera de Google Play. Hay un montón de tiendas de aplicaciones de terceros, solo ten mucho cuidado. Algunas de las mejores tiendas son:

Cómo mostrar el valor correcto de la batería

Android se desarrolló teniendo en cuenta baterías específicas, por lo que un sistema operativo basado en Android mostrará valores de batería incorrectos en diferentes plataformas de hardware (como una computadora portátil). Para corregir esto, hay algunas cosas que modificar.

En Linux, las aplicaciones recopilan el estado de la batería a través de sysfs, donde el estado de la batería se encuentra en /sys/class/power_supply/. Sin embargo, diferentes plataformas pueden brindarle un diseño de directorio diferente en /sys/class/power_supply/, pero Android codifica el diseño del directorio en /sys/class/power_supply/. Para resolver este problema, puede agregar nuevas entradas en vendor/asus/eeepc/system.prop, donde el usuario puede cambiar el valor de estas entradas para configurar correctamente el diseño del directorio sysfs para diferentes plataformas. Estas entradas son:

ro.sys.fs.power_supply.ac=/AC0
ro.sys.fs.power_supply.bat=/BAT0
ro.sys.fs.power_supply.ac.feature.online=/online
ro.sys.fs.power_supply.bat.feature.status=/status
ro.sys.fs.power_supply.bat.feature.present=/present
ro.sys.fs.power_supply.bat.feature.capacity.now=/charge_now
ro.sys.fs.power_supply.bat.feature.capacity.full=/charge_full
ro.sys.fs.power_supply.bat.feature.voltage.now=/voltage_now
ro.sys.fs.power_supply.bat.feature.voltage.full=/voltage_full
ro.sys.fs.power_supply.bat.feature.tech=/technology
#ro.sys.fs.power_supply.bat.features.bat.health is not supported
#ro.sys.fs.power_supply.bat.features.bat.temperature is not supported

En esencia, estas entradas le indican al código de servicio de batería de Android que busque la información en el lugar correcto.

Para implementar su propio código de manejo del estado de la batería, simplemente vuelva a implementar la clase IBatteryServiceStatus en frameworks/base/libs/utils/IBatteryServiceStatus.cpp, reemplazando frameworks/base/libs/utils/BatteryServiceStatus.cpp con su propia implementación.

Para despertar la máquina

A diferencia de otros sistemas operativos, no puede simplemente activar el sistema desde el estado de suspensión moviendo el mouse o presionando un botón aleatorio del teclado.

Solo puede usar las teclas ESC, Menú, izquierda, derecha, arriba y abajo para activar el sistema. Para activar el sistema, debe mantener presionadas las teclas mencionadas anteriormente durante al menos 1 segundo. Puede presionar la tecla de menú cuando aparece la pantalla de bloqueo de teclas para desbloquear la pantalla, y puede usar el mouse para girar la rueda en la pantalla de bloqueo de teclas para desbloquear la pantalla.

Cómo iniciar Android x86 en gráficos no compatibles

Al iniciar el Live-CD, en el menú que ofrece varias opciones de inicio, presione la tecla Tab en su teclado. Esto mostrará el indicador de inicio.

Ahora deberías ver algo como:

kernel initrd=/initrd.img root=/dev/ram0
androidboot_hardware=generic_x86 acpi_sleep=s3_bios,s3_mode video=-16
quiet SRC= DATA= DPI=240

Debe editar esta línea, primero eliminando «silencioso» para ver qué mensajes del kernel se muestran.

Luego puede configurar diferentes parámetros del modo de video. Puede usar NoModeSet, que deshabilita la configuración del modo kernel e indica al kernel que no configure automáticamente la resolución gráfica. Alternativamente, puede usar Xforcevesa, que impone el uso del controlador VESA.

Juega con estos parámetros para ver cuál funciona para ti; también puedes configurarlos juntos «nomodeset xforcevesa».