Czy mogę uruchamiać aplikacje na Androida na Ubuntu?

99

Czy na Ubuntu można uruchamiać aplikacje na Androida? I nie mam na myśli emulatora, ale natywnie, tak jak w przypadku każdej innej aplikacji zainstalowanej za pomocą Centrum oprogramowania Ubuntu.

mxhernaiz
źródło

Odpowiedzi:

28

Prosta odpowiedź brzmi: nie, nie możesz. Chociaż aplikacje na Androida są tworzone w Javie i dlatego powinny działać, środowisko jest zupełnie inne:

  • Rozmiar ekranu jest ograniczony, koncepcja „systemu okienkowego” nie istnieje w telefonie komórkowym
  • Niektóre urządzenia po prostu nie istnieją, karta SIM, GPS itp

Istnieje emulator, który oszukuje aplikacje, dając im dodatkowe potrzebne im bity. Ale używa natywnego OpenJDK na twoim komputerze, aby działały dobrze. Pomyśl o tym jak o środowisku testowym, a nie emulatorze.

W każdym razie, jeśli masz pomysł, aby uruchomić Layar na swoim laptopie, zapomnij o tym, nie ma to żadnego sensu.

paulo.albuquerque
źródło
1
Dziękuję za odpowiedź. Myślałem bardziej w kategoriach możliwości uruchamiania aplikacji (takich jak eReaders), które nie są dostępne dla Ubuntu.
mxhernaiz
2
Myślę, że masz FBReadera w repozytoriach, może to zadziała.
paulo.albuquerque
A jeśli inne pytania nie będą miały sensu, dodam tylko, że uruchomienie programu w emulatorze nie jest warte wysiłku, chyba że jesteś programistą.
mlissner,
FBReader jest poważnie upośledzony przez Unity, a kiedy ostatni raz sprawdzałem, był także upośledzony przez Windows. :( Mam jego kopię, ale jej nie używam, ponieważ za każdym razem, gdy naciskasz klawisz Enter (przeszukując bibliotekę książek), maksymalizuje i minimalizuje okno, powodując utratę miejsca i kilka innych złych doświadczeń.
KI4JGT
1
... a natywny kod jest kompilowany przeciwko Bionic libc, co znacznie różni się od GNU libc dostarczanego z Ubuntu.
Nathan Osman
28

Teraz możesz w Chrome uruchamiać pakiety APK, korzystając z tego rozszerzenia (pamiętając, że jest ono w fazie rozwoju do użytku przez programistów do testowania aplikacji) . Oto kilka kroków, które zrobiłem, aby go uruchomić

  1. Zainstaluj stąd - kliknij „Dodaj do Chrome”

    Zajmie to trochę czasu, ponieważ wydaje się, że pobierz instalator CRX o wadze 113 Mb i kolejny około 9 Mb, więc bądź cierpliwy: wprowadź opis zdjęcia tutaj

    Uwaga na mojej wersji Chromium 40 Fedory 21 dostałem błąd „Plik manifestu jest nieprawidłowy” podczas próby instalacji rozszerzenia, nawet po wyczyszczeniu danych i ponownym załadowaniu rozszerzenia. Miałem również problemy z kompilacją Chromium 41 w Ubuntu 14.04, więc zainstalowałem Google Chrome :( i to działało.

  2. Pobierz APK aplikacji, której chcesz używać - nie, nie wygląda na to, że możesz zainstalować z Google Play, potrzebujesz pliku APK aplikacji, więc jest to trudny kawałek.
    Większość twórców oprogramowania o zamkniętych źródłach nie chce, aby ich rzeczy były swobodnie rozpowszechniane, więc w przypadku większości aplikacji w Google Play musisz przynajmniej użyć:

    • Użyj APK do aplikacji typu open source - do przetestowania tego próbowałem przy użyciu x86 APK dla VLC Media PLayer , co spowodowało wyświetlenie ekranu błędu - następnie wypróbowałem wersję Arc Arm7, która działała na początku, a następnie uległa awarii.
    • Pobierz APK z urządzenia z Androidem - łatwo to zrobić na niektórych zrootowanych urządzeniach z Androidem, na normalnych urządzeniach Myślę, że możesz skopiować apki aplikacji systemowej z /system/appsjakiegoś miejsca - ponownie nie jest to zalecane ze względu na legalne kwestie.
    • Skorzystaj z usługi / repozytorium plików APK innej firmy - np. Ten artykuł sugeruje ten , ale problem polega na tym, że możesz pobierać zmodyfikowane lub zainfekowane programy / pliki. Prawdopodobnie należy to uznać za ostateczność.
    • Użyj rozszerzenia innej firmy - np. Tego, który udaje, że jest urządzeniem i pobiera (nie jest to dobry pomysł, jeśli lubisz legalne rzeczy, a Google śledzi każdy Twój ruch (głównie po zalogowaniu), więc możesz się dowiedzieć dość szybko .. . Nieaktualne zarówno w przeglądarce, jak i prawdopodobnie w Androidzie . W każdym razie nie zaleca się instalowania rozszerzeń spoza sklepu z rozszerzeniami przeglądarki!
  3. Zainstaluj to

    Teraz dochodzimy do przyjemniejszego wypróbowania tego. Przejdź do aplikacji w chrome (lub wpisz chrome://appsw pasku adresu URL) i uruchom Arc Welder. Następnie wybierz katalog, w którym znajduje się APK, a następnie APK, a następnie wybierz „Uruchom aplikację” w oknie.

    Jeśli okno pokazuje ikonę aplikacji jako taką, która wygląda następująco:
    folder z ikoną koła zębatego
    aplikacja prawdopodobnie nie będzie działać, więc ich kontynuacja może nie mieć większego sensu. Wydaje się, że tak się dzieje w przypadku aplikacji na Androida 4.4 + ...

  4. Użyj tego

    Udało mi się uruchomić QuickOffice i przeważnie pracować pod rozszerzeniem, chociaż nie mogłem zapisać żadnych dokumentów, ponieważ nie był zadowolony z wyboru miejsca do zapisania pliku (pokazując pole wyboru folderu , a nie pole wyboru pliku do zapisania: P) wprowadź opis zdjęcia tutaj

    Po naciśnięciu przycisku „Uruchom aplikację” rozszerzenie automatycznie dodaje pozycję na stronie aplikacji w Chrome - można to zrobić w samodzielny program uruchamiający aplikacje, aby uruchamiać aplikację bezpośrednio z menu aplikacji / dash / launcher - jest to prawdopodobnie najlepsza funkcja tego rozszerzenia, ponieważ integruje się z pulpitem i nie trzeba najpierw uruchamiać emulatora itp.

    Ogólnie rzecz biorąc, jest to genialne, biorąc pod uwagę, że prawdopodobnie jest wciąż w fazie rozwoju i nie jest do tego przeznaczone, działa całkiem dobrze.

Źródła:


Alternatywnie można użyć emulatora jak sugerowano w innych odpowiedzi - ja miałem pewne sukcesy przy użyciu Genymotion (tam były kilka przydatnych instrukcje tutaj , ale ta odpowiedź może pomóc). Emulator Androida można pobrać jako część pakietu Android Studio SDK, jednak ponieważ aplikacje Android Nougat powinny zostać podpisane.

Wilf
źródło
Czy komuś udało się zainstalować WhatsApp przy użyciu tej metody?
orschiro,
1
Udało mi się zainstalować Skype dla firm na Ubuntu przy użyciu tej metody Świetnie, dziękuję za sugestię.
podarok
Dzięki. Czy można uzyskać pakiet APK o zamkniętym źródle, jeśli mój Android nie jest zrootowany? Jeśli nie, co mogę teraz zrobić? Czy można zainstalować i uruchomić system operacyjny Android na Ubuntu przez virtualbox, a następnie zainstalować aplikację z Google Playstore?
Ben
@Ben - możesz dostać niektóre istniejące urządzenia AFAIK, w przeciwnym razie są to strony osób trzecich. Google Play może być teraz ograniczony do instalacji poza urządzeniami producenta
Wilf
18

Najbliżej znajdziesz emulator. Ta odpowiedź może nie być dla ciebie (możesz już to wszystko wiedzieć), ale jeśli inni ludzie wpadną w ten wątek, mogą być zainteresowani wiedzą.

Możesz uruchamiać rzeczy za pomocą emulatora Androida, będącego częścią zestawu Android SDK (zestaw programistyczny).

Zapewnia to urządzenie wirtualne, które pozwala na uruchamianie wielu aplikacji na Androida, choć może mieć problemy z niektórymi bardziej zależnymi od sprzętu rzeczami (3D, połączenia telefoniczne, GPS, SMS itp.)

Oto przewodnik po konfiguracji:

Jak uruchamiać aplikacje Android na Ubuntu - Softpedia

Oli
źródło
5

Nie, nie możesz (inaczej niż za pomocą emulatora wspomnianego przez Oli.) Wygląda jednak na to, że ludzie Ubuntu nad tym pracują, więc możesz to zrobić w przyszłości. Mój dowód: http://arstechnica.com/open-source/news/2009/05/canonical-developers-aim-to-make-android-apps-run-on-ubuntu.ars


źródło
1
Oto wpis startera dla projektu. Nie mogę znaleźć repozytorium kodu i niestety jest on oznaczony jako „kompletny”, „Niski priorytet”, „przestarzały”. blueprints.launchpad.net/ubuntu/+spec/…
NoBugs
5

Wygląda na to, że coraz więcej programistów wchodzi w tę domenę. http://www.shashlik.io/ ,

Co to jest Szaszłyk

Celem Shashlik jest zapewnienie sposobu uruchamiania aplikacji Androida na standardowym pulpicie Linux-a tak łatwo i prosto, jak to możliwe.

może uruchamiać aplikacje na Androida na Ubuntu. Nie jest stabilny i nie wszystkie aplikacje działają, ale wydaje się obiecujący.

PS Musiałem sudo apt-get install libgl1-mesa-devisudo apt-get install kde-baseapps-bin

jtzero
źródło
1
Czy możesz zaktualizować tę odpowiedź, aby podać więcej szczegółów na temat jej używania?
RolandiXor
1
Shashlik używa widelca QEMU, widelca emulatora Androida z SDK. Jest modyfikowany, aby wyświetlał ikonę okna i tytuł uruchomionej aplikacji, aby nie wyglądał jak emulator.
Enkouyami,
4

MOŻESZ

I masz kilka opcji, aby to zrobić.

  • Specjalny emulator, taki jak te dostarczane z zestawem Android SDK. Nie używaj ARM, ponieważ są one bardzo wolne.
  • Ogólna maszyna wirtualna, taka jak VirtualBox z zainstalowanym systemem Android x86. Polecam
  • Chrom. Najnowsze wersje Google Chrome mogą uruchamiać aplikacje na Androida wewnątrz siebie (nigdy tego nie próbowałem, ale ludzie oceniają to wysoko).
  • Podłącz urządzenie z Androidem przez USB lub sieć Wi-Fi i użyj jakiegoś Pulpitu zdalnego.
Barafu Albino
źródło
Dziwne. Po podłączeniu myszy zawsze pojawiał się kursor myszy, nawet na prawdziwym telefonie. Coś jest z tobą maszyną wirtualną, tak myślę. Android obsługuje mysz.
Barafu Albino
może muszę użyć nowszej wersji
mchid
1
Ta odpowiedź nie zawiera szczegółowych informacji na temat działania któregokolwiek z nich.
RolandiXor
4

Czy można uruchamiać aplikacje na Androida na Ubuntu?

tak

Natywnie, tak jak w przypadku każdej innej aplikacji zainstalowanej za pomocą Centrum oprogramowania Ubuntu?

Tak, ale przez wiele majsterkowania:

  • Korzystanie z chrome (narzędzia na poziomie Beta);
  • Anbox (oprogramowanie na poziomie alfa);

  1. Google Chrome może uruchamiać aplikacje na Androida jako aplikacje Chrome, ale najpierw musisz je przekonwertować za pomocą Arc Welder lub ARChon Custom Runtime .

  2. Anbox nie jest emulatorem, ale warstwą kompatybilności. Ma na celu uruchamianie aplikacji dla systemu Android na dowolnym systemie operacyjnym GNU / Linux poprzez umieszczenie systemu operacyjnego Android w kontenerze, abstrakcję dostępu do sprzętu i integrację podstawowych usług systemowych w systemie GNU / Linux, dzięki czemu aplikacje na Androida można zintegrować z systemem operacyjnym, jak każdy inny inna natywna aplikacja.

Enkouyami
źródło
1

Nowszą dostępną opcją jest Anbox . W przeciwieństwie do większości innych rozwiązań, jest oparty na kontenerze, a nie jest emulatorem. Oznacza to, że działa na jądrze hosta. Próbuje również zintegrować się z systemem operacyjnym hosta, aby aplikacje wyglądały na natywne. Obecnie jest alfa, ale wygląda obiecująco.

Jon Bentley
źródło