Ponieważ Android to rozwidlone jądro Linuksa i stos oprogramowania, zastanawiam się, czy są jakieś projekty lub pomysły dotyczące stworzenia wersji Androida, którą można dodać do systemu Linux, aby umożliwić systemowi Linux uruchamianie aplikacji na Androida (skompilowanych dla, powiedzmy, x86 ).
Czy coś takiego istnieje, czy byłoby to możliwe?
(Nie chodzi mi o emulator dostarczany z SDK).
applications
linux
x86
Andrew J. Brehm
źródło
źródło
Odpowiedzi:
Od czasu opublikowania tej informacji sytuacja zmieniła się nieco.
Istnieje teraz kilka (choć żaden z nich jeszcze nie jest idealny) sposobów uruchamiania aplikacji na Androida w systemie Linux bez emulatora lub maszyny wirtualnej.
Nawiasem mówiąc, nie ma potrzeby osobnego kompilowania APK dla x86. Aplikacje, które piszesz, są kompilowane do kodu Dalvik Executable (DEX), który jest ostatecznie przekształcany w kod asemblera (zgodnie z wymaganą architekturą) przez jądro w celu wysłania do procesora. (Ta ostatnia część pochodzi z tej odpowiedzi ).
źródło
Nic takiego jeszcze nie istnieje, ponieważ aplikacje nie są uruchamiane natywnie w systemie operacyjnym, ale zamiast tego używają wirtualnej maszyny Dalvik ( Wikipedia ). Jest nieco podobny do Java w tym sensie, że używa kodu bajtowego i tworzy oddzielne środowisko dla każdej aplikacji. Jeśli więc środowisko Dalvik nie jest przeniesione na inne platformy, nie można ich uruchomić na zwykłym sprzęcie.
Istnieje projekt o nazwie Alien Dalvik autorstwa Myriad, który próbuje uruchamiać aplikacje na Androida w różnych środowiskach, ale nie ma na nim zbyt wielu informacji. Myriad Alien Dalvik
źródło
Wszystko się zmieniło od czasu opublikowania Revetahw.
Szaszłyk wydaje się być nieaktywnym projektem, ale Anbox wydaje się zyskiwać na popularności. Zaletą Anbox jest to, że nie emuluje jądra Androida, ale używa funkcji jądra Linuksa do współdzielenia jądra między systemem Linux a systemem Android.
Ponadto system operacyjny Chrome ma teraz stabilną obsługę aplikacji na Androida na kilku urządzeniach, ale niestety integracja ta jest zamknięta i nie planuje udostępnienia otwartego oprogramowania.
źródło
Nie wiem, czy są takie projekty. Najbliżej prawdopodobnie są projekty Android-x86, które są portem środowiska Androida na komputerowych stacjach roboczych: http://www.android-x86.org/
źródło