Je me demande pourquoi les applications Android ne pourront pas être exécutées en mode natif sur Ubuntu Touch . Je veux dire, n'est-ce pas seulement Linux?
ubuntu-touch
android
programming
user287536
la source
la source
Réponses:
La réponse courte est non."
À strictement parler, le noyau Linux fournit à peine plus qu'une interface directe avec le matériel sur lequel il tourne. Il existe toute une pile d'API, de programmes, d'applications, etc. spécifiques aux téléphones Android, dont les applications Android dépendent. De plus, Android ne fonctionne pas sur un noyau Linux générique, mais s'exécute à la place sur un noyau hautement personnalisé par Google dans le but spécifique d'exécuter leur système d'exploitation.
Même s'il est techniquement possible de reproduire la pile complète requise pour que les applications Android s'exécutent sur un autre système, elle serait gonflée et extrêmement inefficace.
la source
Le Nokia N900 exécute maemo witch est un système d'exploitation Linux et pourtant il peut exécuter l'application Android via l'environnement Dalvik qui a été conçu pour cela, mais jamais mis sur le marché ou dans des répertoires. Pourquoi? Seule la société qui a développé le dalvik pour n900 le sait. Il y avait maintenant une autre initiative appelée apkenv. Il semble qu'il n'y ait pas tant de choses à ajouter pour que le n900 exécute certains jeux Android et peu importe la puissance du processeur ou du processeur ou le bureau de maemo, les applications fonctionnent sur un lac comme dans n'importe quelle émulation, mais certaines fonctionnent parfaitement, d'autres non. Donc, à propos d'Ubuntu Touch, il n'est pas question de technique (peut-être que je me trompe, mais le téléphone tactile officiel d'Ubuntu est un xiaomi qui est également utilisé pour Android, donc le matériel n'est pas un problème dans ce cas), mais la volonté et la loi que Google a gagnées ''
la source
La réponse à votre question est un GRAND NON.
Android est complètement différent d' Ubuntu Touch, bien qu'android soit basé sur le noyau Linux, mais cela ne signifie pas que les applications natives d'Android peuvent fonctionner sur Linux et vice-versa.
La similitude du noyau entre différents OS ne rend pas leurs applications exécutables sur ces différents OS. Le noyau est la couche logicielle la plus basse d'un système. Au-dessus du noyau se trouve l'espace utilisateur qui se compose d' un logiciel système et d'une interface d'application .
Le système d'exploitation avec le même noyau peut avoir des espaces utilisateur entièrement différents et des applications natives s'exécutent dans un espace utilisateur particulier.
De plus, les applications Android sont développées généralement à l'aide d'applications Java et Android exécutées dans un environnement d'exécution ( Dalvik ou ART ) qui prend le bytecode de JVM en entrée, tandis que les applications Linux sont directement converties en code machine lors de la compilation.
Les applications développées pour Android à l'aide de C ++ ne peuvent pas être exécutées directement dans un environnement Linux mais doivent d'abord être compilées pour les systèmes Linux.
la source