18 votes

Est-il possible d'exécuter des applications Android sous Linux (normal) ?

Puisque Android est un noyau Linux bifurqué plus une pile logicielle, je me demande s'il existe des projets ou des idées concernant la création d'une version d'Android qui peut être ajoutée à un système Linux pour permettre à ce dernier d'exécuter des applications Android (compilées pour, disons, x86).

Une telle chose existe-t-elle ou serait-elle possible ?

(Je ne parle pas de l'émulateur fourni avec le SDK).

2 votes

Le lecteur Android pour le BlackBerry Playbook est proche, bien qu'il fonctionne bien sûr sur QNX et non sur Linux.

12voto

Chris Roberts Points 7543

Rien de tel n'existe encore puisque les applications ne sont pas exécutées nativement dans le système d'exploitation, mais utilisent la machine virtuelle Dalvik à la place ( Wikipedia ). C'est un peu comparable à Java dans le sens où il utilise le bytecode et crée un environnement séparé pour chaque application. Ainsi, à moins que l'environnement Dalvik ne soit porté sur d'autres plates-formes, elles ne peuvent pas être exécutées sur du matériel normal.

Il existe un projet appelé Alien Dalvik par Myriad qui tente de faire fonctionner les applications Android dans différents environnements, mais il n'y a pas beaucoup d'informations à ce sujet. Myriad Alien Dalvik

2voto

Fiksdal Points 1101

Les choses ont un peu changé depuis que ce message a été posté.

Il existe maintenant plusieurs moyens (bien qu'aucun ne soit encore parfait) d'exécuter des applications Android sur Linux sans émulateur ou VM.

  1. Shashlik présente une intégration plutôt agréable avec votre environnement de bureau GNU. Il manque cependant les services Google Play.
  2. ARChon utilise Google Chrome, et vous permet d'installer des applications Android comme si elles étaient des applications Chrome. C'est plutôt chouette, mais ici aussi, la compatibilité n'est pas parfaite .
  3. Enfin, Google est apportant officiellement le Play Store à Chrome OS. Comme il s'agit d'un projet officiel développé par Google, je pense qu'il devrait avoir la meilleure compatibilité du lot. Chrome OS est une distribution Linux, basée sur Gentoo. L'essentiel de son code source est mis à disposition par le projet Chromium OS. Ce code source étant disponible, il ne devrait pas être trop difficile de porter cette compatibilité sur les distributions GNU/Linux populaires. Google est relativement favorable à l'open source (du moins comparé à Apple/Microsoft), et je ne pense pas qu'ils dresseront des obstacles à un tel portage. Au contraire, ils semblent vouloir que le Play Store soit présent sur le plus grand nombre possible d'appareils. Il se peut même qu'ils intègrent cette fonctionnalité dans les futures versions de Google Chrome pour Linux, ou qu'ils publient un paquet séparé. La société publie la majeure partie du code source d'Android et de Chrome OS et utilise Linux en interne.

D'ailleurs, il n'est pas nécessaire de compiler les APKs séparément pour x86. Les applications que vous écrivez sont compilées en code Dalvik Executable (DEX), qui est finalement converti en code assembleur (en fonction de l'architecture requise) par le module Noyau à envoyer au processeur. (Cette dernière partie est tirée de cette réponse. )

1voto

Tin Man Points 316

Les choses ont encore changé depuis que Revetahw a posté.

Shashlik semble être un projet inactif, mais Anbox semble gagner du terrain. L'avantage d'Anbox est qu'il n'émule pas le noyau d'Android, mais utilise plutôt les caractéristiques du noyau Linux pour partager le noyau entre votre système Linux et le système Android.

De plus, Chrome OS dispose désormais d'une prise en charge stable des applications Android sur plusieurs appareils, mais malheureusement, cette intégration est fermée et aucun projet d'ouverture n'a été annoncé.

0voto

yoliho Points 340

Je ne sais pas s'il existe des projets de ce type. Ce qui s'en rapproche le plus est probablement le projet Android-x86 qui est un portage d'un environnement Android sur les stations de travail de bureau : http://www.Android-x86.org/

2 votes

Il ne s'agit pas d'émuler un environnement Android sur des postes de travail de bureau, mais d'un portage d'Android sur des PC normaux.

0 votes

Bien sûr, ma formulation n'était pas très adaptée. Je l'ai corrigée, merci.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X