Use Cuttlefish para lanzar una compilación AOSP

Esta página describe cómo iniciar una compilación AOSP usando Cuttlefish .

Verificar la disponibilidad de KVM

Cuttlefish es un dispositivo virtual y depende de que la virtualización esté disponible en la máquina host.

En una terminal en su máquina host, asegúrese de que la virtualización con una máquina virtual basada en kernel (KVM) esté disponible:

grep -c -w "vmx\|svm" /proc/cpuinfo

Este comando debe devolver un valor distinto de cero.

Cuando se ejecuta en una máquina ARM, la forma más directa es verificar /dev/kvm :

find /dev -name kvm

Lanzar Sepia

  1. En una ventana de terminal, descargue, compile e instale los paquetes host de Debian:

    sudo apt install -y git devscripts config-package-dev debhelper-compat golang curl
    git clone https://github.com/google/android-cuttlefish
    cd android-cuttlefish
    for dir in base frontend; do
      cd $dir
      debuild -i -us -uc -b -d
      cd ..
    done
    sudo dpkg -i ./cuttlefish-base_*_*64.deb || sudo apt-get install -f
    sudo dpkg -i ./cuttlefish-user_*_*64.deb || sudo apt-get install -f
    sudo usermod -aG kvm,cvdnetwork,render $USER
    sudo reboot
    

    El reinicio desencadena la instalación de módulos kernel adicionales y aplica las reglas udev .

  2. Cuttlefish es parte de la plataforma de código abierto de Android (AOSP). Las compilaciones del dispositivo virtual se encuentran en el sitio de integración continua de Android. Para encontrar un índice de todas las compilaciones de Android, vaya al sitio de integración continua de Android en http://ci.android.com/ .

  3. Introduzca un nombre de sucursal. Use la rama aosp-main o use una rama de imagen genérica del sistema (GSI) como aosp-android13-gsi .

  4. Navegue hasta el destino de compilación aosp_cf_x86_64_phone y haga clic en userdebug para obtener la última compilación.

  5. Haga clic en el cuadro verde debajo de userdebug para seleccionar esta compilación. Aparece un panel Detalles con más información específica de esta compilación. En este panel, haga clic en Artefactos para ver una lista de todos los artefactos adjuntos a esta compilación.

  6. En el panel Artefactos, descargue los artefactos para Cuttlefish.

    1. Haga clic en el artefacto aosp_cf_x86_64_phone-img-xxxxxx.zip , que contiene las imágenes del dispositivo. En el nombre de archivo, "xxxxxx" es el ID de compilación de este dispositivo.

    2. Desplácese hacia abajo en el panel y descargue cvd-host_package.tar.gz . Siempre descargue el paquete de host desde la misma compilación que sus imágenes.

  7. En su sistema local, cree una carpeta contenedora y extraiga los paquetes:

    mkdir cf
    cd cf
    tar -xvf /path/to/cvd-host_package.tar.gz
    unzip /path/to/aosp_cf_x86_64_phone-img-xxxxxx.zip
    
  8. Lanzar Sepia:

    HOME=$PWD ./bin/launch_cvd --daemon
    

Verifique que Cuttlefish sea visible a través de adb

Similar a un dispositivo físico, Cuttlefish es visible a través de Android Debug Bridge (adb) .

En la misma carpeta donde inició Cuttlefish, ejecute el siguiente comando para ver una lista de todos los dispositivos Android disponibles a través de adb en su máquina host:

./bin/adb devices

Ver e interactuar con el dispositivo virtual en la web

De forma predeterminada, Cuttlefish se inicia con --start_webrtc , que habilita una vista web a través del puerto 8443 en la máquina host.

Para ver e interactuar con sus dispositivos virtuales, vaya a https://localhost:8443 en su navegador web.

Para obtener más información, consulte Cuttlefish: Streaming WebRTC .

Detener la sepia

Detenga el dispositivo virtual dentro del mismo directorio que usó para iniciar el dispositivo:

HOME=$PWD ./bin/stop_cvd