Cette page explique comment lancer une compilation AOSP à l'aide de Cuttlefish.
Vérifier la disponibilité de KVM
Cuttlefish est un appareil virtuel et dépend de la disponibilité de la virtualisation sur la machine hôte.
Dans un terminal de votre machine hôte, assurez-vous que la virtualisation avec une machine virtuelle basée sur le noyau (KVM) est disponible :
grep -c -w "vmx\|svm" /proc/cpuinfoCette commande doit renvoyer une valeur non nulle.
Lorsque vous exécutez le programme sur une machine ARM64, le moyen le plus direct consiste à rechercher /dev/kvm :
find /dev -name kvmLancer Cuttlefish
- Dans une fenêtre de terminal, téléchargez, compilez et installez les packages Debian de l'hôte : - sudo apt install -y git devscripts equivs config-package-dev debhelper-compat golang curl- git clone https://github.com/google/android-cuttlefish- cd android-cuttlefish- tools/buildutils/build_packages.sh- 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- Le redémarrage déclenche l'installation de modules de noyau supplémentaires et applique les règles - udev.
- Cuttlefish fait partie de la plate-forme Android Open Source (AOSP). Les compilations de l'appareil virtuel sont disponibles sur le site d'intégration continue Android. Pour trouver un index de toutes les versions d'Android, accédez au site d'intégration continue d'Android à l'adresse http://ci.android.com/. 
- Saisissez un nom de branche. Utilisez la branche - aosp-android-latest-releasepar défaut ou une branche d'image système générique (GSI) telle que- aosp-android13-gsi.
- Accédez à la cible de compilation aosp_cf_x86_64_only_phone, puis cliquez sur userdebug pour obtenir la dernière compilation. 
- Cliquez sur la case verte sous userdebug pour sélectionner cette version. Un panneau Détails s'affiche et contient des informations spécifiques à cette compilation. Dans ce panneau, cliquez sur Artifacts (Artefacts) pour afficher la liste de tous les artefacts associés à cette compilation. 
- Dans le panneau "Artefacts", téléchargez les artefacts pour Cuttlefish. - Cliquez sur l'artefact - aosp_cf_x86_64_phone-img-xxxxxx.zippour x86_64 ou sur l'artefact- aosp_cf_arm64_only_phone-xxxxxx.zippour ARM64, qui contient les images de l'appareil. Dans le nom du fichier, "xxxxxx" correspond à l'ID de compilation de cet appareil.
- Faites défiler le panneau vers le bas et téléchargez - cvd-host_package.tar.gz. Téléchargez toujours le package hôte à partir de la même version que vos images.
 
- Sur votre système local, créez un dossier de conteneur et extrayez les packages : - Architecture x86_64 : - mkdir cf- cd cf- tar -xvf /path/to/cvd-host_package.tar.gz- unzip /path/to/aosp_cf_x86_64_phone-img-xxxxxx.zip
- Architecture ARM64 : - mkdir cf- cd cf- tar -xvf /path/to/cvd-host_package.tar.gz- unzip /path/to/aosp_cf_arm64_only_phone-img-xxxxxx.zip
 
- Lancez Cuttlefish : - HOME=$PWD ./bin/launch_cvd --daemon
Vérifier que Cuttlefish est visible via adb
Comme un appareil physique, Cuttlefish est visible via Android Debug Bridge (adb).
Dans le même dossier que celui dans lequel vous avez lancé Cuttlefish, exécutez la commande suivante pour afficher la liste de tous les appareils Android disponibles via adb sur votre machine hôte :
./bin/adb devicesAfficher l'appareil virtuel et interagir avec lui sur le Web
Par défaut, Cuttlefish se lance avec --start_webrtc, ce qui permet d'afficher une vue Web via le port 8443 sur la machine hôte.
Pour afficher vos appareils virtuels et interagir avec eux, accédez à https://localhost:8443 dans votre navigateur Web.
Pour en savoir plus, consultez Cuttlefish : diffusion en flux continu WebRTC.
Arrêter Cuttlefish
Arrêtez l'appareil virtuel dans le même répertoire que celui utilisé pour le lancer :
HOME=$PWD ./bin/stop_cvd