Comment exécuter Android dans Qemu pour jouer aux jeux Android 3D sur Linux

Comment exécuter Android dans Qemu pour jouer aux jeux Android 3D sur Linux
Android-X86 est un projet gratuit et open source qui vise à fournir des images Android pour les systèmes x86. Avec de nouvelles fonctionnalités, de nombreux correctifs de compatibilité et correctifs de bogues sur le projet open source Android, Android-X86 est la solution la plus robuste actuellement disponible aujourd'hui pour les PC de bureau x86.Cet article décrit comment installer Android-X86 dans Qemu avec une accélération matérielle complète sur Ubuntu, vous permettant de jouer à des jeux 3D et d'exécuter des applications Android majeures.

Qemu est une solution de virtualisation matérielle pour Linux qui permet l'émulation d'un système d'exploitation entier installé sur un disque virtuel. Virgl est un rendu OpenGL ajouté aux constructions QEMU récentes, il vous permet de créer une carte graphique virtuelle capable en 3D dans la machine virtuelle Qemu.

En utilisant une combinaison de technologies Android-X86, Qemu et Virgl, nous démarrerons et installerons le système d'exploitation Android complet dans une machine virtuelle.

Une note de compatibilité: ce guide a été testé avec Ubuntu 19.04 et les instructions ci-dessous fonctionneront pour Ubuntu 19.04 ou versions plus récentes. Qemu dans les versions plus anciennes d'Ubuntu manque de soutien Virgl. Vous devez également avoir un processeur compatible Virtual Machine (KVM) basé sur le noyau sur votre système. La plupart des CPU modernes ont une prise en charge de KVM, mais vous pouvez vérifier sa présence en exécutant la commande ci-dessous:

Egrep -C '(vmx | svm)' / proc / cpuinfo

Tout nombre supérieur à 0 implique le support KVM. Vous devez toujours vous assurer que la virtualisation est activée dans le BIOS. Plus d'informations peuvent être trouvées ici.

Conditions préalables

Nous allons commencer par installer des packages QEMU requis et ajouter un nom d'utilisateur au groupe KVM. Exécuter les commandes ci-dessous:

sudo apt install qemu qemu-kvm
sudo addUser 'id -un' kvm

Redémarrez votre système. Téléchargez l'image ISO Android-X86 à partir d'ici. Exécutez la commande suivante pour créer un disque dur virtuel:

Qemu-iMg Create -F QCOW2 AndroidX86_HDA.IMG 10G

Vous pouvez remplacer 10g par n'importe quel nombre et il créera un disque virtuel de cette taille en GB.

Procédure d'installation Android-X86 QEMU

Pour démarrer dans l'image en direct d'Android-X86 dans une machine virtuelle Qemu, exécutez la commande:

Qemu-system-x86_64 \
-activer-kvm \
-M 2048 \
-SMP 2 \
-hôte du processeur \
-Soundhw es1370 \
-dispositif Virtio-Mouse-PCI -vice Virtio-Keyboard-PCI \
-Serial lun: stdio \
-Menu de démarrage = sur \
-net nic \
-utilisateur net, hostfwd = tcp :: 5555-: 22 \
-dispositif virtio-vga, virgl = on \
-Afficher gtk, gl = sur \
-HDA AndroidX86_HDA.img \
-CDROM Android-X86_64-8.1-R3.ISO

Remarquez les arguments «HDA» et «CDROM». Vous devez vous assurer qu'ils correspondent aux noms du disque dur virtuel et téléchargé l'image ISO Android-X86. Si vous avez suivi correctement les instructions jusqu'à ici, vous devriez voir une nouvelle fenêtre contextuelle:

Sélectionnez l'entrée «Installation» et attendez que l'écran de partitionnement apparaisse.

Choisissez «Créer / modifier les partitions», puis GPT pour être «oui».

Ignorez l'avertissement sur l'écran suivant, appuyez simplement sur n'importe quelle touche pour continuer. Vous verrez un gestionnaire de partition.

Sélectionnez «Nouveau», puis continuez à appuyer sur la clé pour les quatre invites suivantes. Vous n'avez rien à spécifier dans les invites. Une fois terminé, vous verrez un système de fichiers nouvellement créé dans le gestionnaire de partition, comme indiqué dans la capture d'écran ci-dessous:

Appuyez sur l'option «Écrire», puis tapez «Oui» pour confirmer. Sélectionnez l'option «Quit» pour quitter le gestionnaire de partition. Choisissez la partition «SDA1» sur l'écran suivant.

Sélectionnez «EXT4» pour formater la partition et sélectionner l'option «Oui» lorsque vous avez invité.

Choisissez «Oui» lorsque vous êtes invité à Grub Boot Loader.

Sur l'écran suivant, vous pouvez voir un avertissement de conversion en «MBR». Sélectionnez «Oui».

Attendez la fin de l'installation.

Ne sélectionnez aucune option, fermez simplement la fenêtre à l'invite suivante:

Android-X86 est désormais entièrement installé dans une machine virtuelle Qemu. Pour démarrer dans un système d'exploitation nouvellement installé, nous utiliserons la même longue commande de haut en haut tout en omettant un argument «CDROM».

Qemu-system-x86_64 \
-activer-kvm \
-M 2048 \
-SMP 2 \
-hôte du processeur \
-Soundhw es1370 \
-dispositif Virtio-Mouse-PCI -vice Virtio-Keyboard-PCI \
-Serial lun: stdio \
-Menu de démarrage = sur \
-net nic \
-utilisateur net, hostfwd = tcp :: 5555-: 22 \
-dispositif virtio-vga, virgl = on \
-Afficher gtk, gl = sur \
-HDA AndroidX86_HDA.IMG

Vous verrez le logo de démarrage Android, puis exécutez d'abord l'écran de configuration.

Attendez la fin de l'installation.

Parcourez simplement la configuration pour arriver à l'écran d'accueil. Android-X86 a un support complet du magasin de lecture intégré. Notez que la machine virtuelle en cours d'exécution saisira tous les coups de touche et les événements de la souris. Pour libérer la prise, vous devrez appuyer sur la combinaison des touches.

La prise en charge d'accélération matérielle 3D est présente.

Des choses importantes que vous devriez savoir

  • Vous pouvez personnaliser la commande que nous avons utilisée ci-dessus dans une certaine mesure: l'interrupteur «-m» est pour le commutateur RAM, «-SMP» est destiné aux noyaux CPU. Si vous voulez explorer toutes les options, Gentoo Wiki a une assez bonne explication.
  • Toglera l'expérience en plein écran immersive.
  • Vous pouvez activer la connectivité Internet dans Android-X86 en appuyant sur l'option «Virtwifi» dans les paramètres «Wi-Fi».
  • Tout ne fonctionnera pas dans Virtual Machine, Bluetooth par exemple.
  • La compatibilité et les performances de l'accélération matérielle dépendront de la carte graphique de votre PC, des pilotes et de la puissance du processeur.
  • La dernière version d'Android-X86 est livrée avec un support Windows en forme libre. Vous pouvez minimiser, maximiser, restaurer les fenêtres et les casser dans les coins, tout comme vous le feriez sur un système d'exploitation de bureau.
  • Android-X86 est en retard sur la version Android actuelle par une version ou deux. Cela n'affectera cependant pas votre capacité à exécuter des applications et des jeux.
  • Android-X86 dans la machine virtuelle Qemu peut ne pas être une voile à 100% lisse. Vous pouvez vous attendre à des accidents aléatoires et à la force se ferme de temps en temps.

Amélioration de la compatibilité des applications dans Android-X86

Certaines applications Android peuvent refuser de travailler avec une architecture x86. Android-X86 comprend une bibliothèque de compatibilité qui aide grandement, mais vous pouvez toujours trouver des problèmes avec certaines applications. Pour activer le calque de compatibilité, bascule «pont natif» dans les paramètres du système.

Enfin, nous avons un petit problème à résoudre. Résolution de la machine virtuelle Android-X86. Si vous avez du matériel PC bas de gamme, je vous suggère d'exécuter Android en mode fenêt. Si vous avez du matériel capable, vous pouvez augmenter la résolution en suivant les instructions ci-dessous.

Modification de la résolution de l'installation Android-X86 dans Qemu Virtual Machine (VM)

AVERTISSEMENT: Toutes les commandes mentionnées ci-dessous sont destinées à être exécutées dans une installation VM Android-X86 (invité). N'essayez pas d'exécuter ces commandes dans votre installation Ubuntu (hôte).

Pour modifier en permanence la résolution de la machine virtuelle Android, nous devons exécuter certaines commandes dans un terminal lancé à l'intérieur de notre instance de machine virtuelle en cours d'exécution. Android-X86 est livré avec une application d'émulation de terminal, le lancez et exécutez les commandes suivantes une par une (permettez l'accès root lorsque vous êtes invité):

su
mont / dev / block / sda1 / mnt
vi / mnt / grub / menu.qui

Presse Une fois que vous voyez le fichier texte pour commencer le mode d'édition. Dans la première entrée, ajoutez la résolution souhaitée au format «Video = widthxheight», comme indiqué dans la capture d'écran ci-dessous:

Pour enregistrer le fichier, appuyez d'abord sur la touche, puis tapez ": wq" sans devis, puis appuyez sur la touche. Exécutez la commande ci-dessous pour déferler en toute sécurité notre point de montage.

umount / mnt

Redémarrez la machine virtuelle Android. La résolution souhaitée est définie maintenant. Vous pouvez voir un peu de coupure en mode fenêt. Pour résoudre ce problème, vous devrez permettre à «Zoom de s'adapter», comme indiqué dans la capture d'écran ci-dessous:

Si vous basculez plein écran en appuyant, il n'y aura pas de coupure. Pour confirmer la résolution correcte, accédez à l'application «Dev Tools», puis sélectionnez l'option «Configuration». La hauteur sera légèrement moins car la hauteur de la barre de navigation en bas est déduite de la hauteur de résolution.

Vitrine

Cet article prétend exécuter des jeux Android 3D à Linux, ce serait un crime de ne pas inclure de séquences. Voici donc quelques images de gameplay de SuperTuxkart fonctionnant à pleine vitesse à l'intérieur de la machine virtuelle Qemu avec Ubuntu 19.04 en tant qu'hôte. Je contrôle le jeu avec des touches de flèches de clavier, mais le jeu lui-même fonctionne dans Android-X86 VM. GIF ci-dessous est accéléré et a perdu la qualité pendant la conversion:

Cela conclut le long post. Si vous aimez exécuter des applications et des jeux Android sur le PC de bureau, cette méthode est bien meilleure que d'utiliser des émulateurs tiers ayant des politiques de confidentialité folles, et cela ne vous oblige pas à vous mêler de partitions système pour une double démarrage.