2016-04-14 14 views
46

Wiem, że zostało to zakwestionowane całkiem sporo. A dokładnie na przykład w tych pytaniach:Uruchamianie Node.Js na Androidzie

  1. Run NodeJs server in Android
  2. How to run my node.js project on android?
    i
  3. NodeJS on IOS/Android

Każda opcja przedstawiona ma problem choć:

  • chcę biegać to na moim normalnym urządzeniem więc chciałbym uniknąć instalowania innego OS na urządzeniu

  • Prace nad JXCore został zatrzymany w zeszłym miesiącu i (być może w wyniku) nie mogę zmusić go do kompilacji (patrz Can't install jxcore-cordova)

  • Port Androida NodeJs Anode nie był opracowywany od 2014 r. I tak naprawdę nie był tak naprawiany
  • Druga odpowiedź w drugim wątku, który podałem tam, jest teraz oficjalną dystrybucją węzłów dla Androida, ale oprócz link do Browse-Website of the latest dist Nie mogłem znaleźć żadnych informacji o tym, jak go faktycznie używać
  • I również widział this ale wydaje się, że urządzenie musi być podłączone do komputera (lub podobne), aby uruchomić ADB poleceń powłoki natomiast chciałbym zrobić to jako oddzielny App

z czasem, że ostatniego od nich pytania zostały opublikowane i jako "najlepsza opcja" JXCore wydaje się być teraz bezużyteczny:
Czy istnieje sposób uruchomienia aplikacji node.js (serwer w moim przypadku) na urządzeniu z systemem Android?

Jeśli zastanawiasz się, dlaczego bym tego chciał: Zrobiłem WebApp z serwerem Node.Js i teraz chcę wersję, którą możesz uruchomić lokalnie z telefonu bez konieczności połączenia z Internetem. Oznacza to, że serwer musi działać na telefonie z systemem Android.

+1

prostu z odsetek, czy obchodzi, czy ktoś rzeczywiście może korzystać z tej aplikacji lub jesteś po prostu staramy się zrobić to, dzięki czemu można go używać w telefonie. Bo widzę, że wymaga to wielu ustawień od użytkowników/klientów, jeśli mogłoby to nawet zadziałać. – zgc7009

+0

Całkowicie się zgadzam, że jeśli użyłbym tego na moim telefonie, moja obecna próba byłaby zbyt skomplikowana. Ten serwer Node.JS jest jednak rodzajem małego Game Web Application Server, więc wszyscy gracze będą musieli mieć dostęp do tego serwera. – MariusR

+0

Nie będziesz w stanie połączyć serwera Node.JS w system Android i bardzo niewiele osób będzie technicznie skłonnych do zainstalowania go do gry. Jeśli jest to tylko dla ciebie, to jedno, ale jeśli w ogóle ma być skalowane, nie rozumiem, jak to zadziała. Istnieje wiele aplikacji, w szczególności gier, które wymagają nie tylko połączenia internetowego, ale także silnego. – zgc7009

Odpowiedz

36

Po prostu miałem chwilę szczęki - Termux pozwala zainstalować NodeJS na urządzeniu z systemem Android!

Wydaje się działać dla podstawowego Websocket Speed Test miałem pod ręką. Obsługiwany przez nią adres http może być dostępny zarówno lokalnie, jak i w sieci.

Jest medium post that explains the installation process

Zasadniczo: 1. Zainstaluj termux 2. apt zainstalować nodejs 3. węzła it up!

Jedno ograniczenie, na które natrafiłem - wygląda na to, że foldery współdzielone nie mają wymaganych uprawnień do instalowania modułów. Może to być po prostu uprawnienie do pliku. Prywatne przechowywanie aplikacji działa dobrze.

+2

Dziwne jest to, że już znalazłem odpowiedź i zaakceptowałem to pytanie, które opisało to samo, co zrobiłeś, ale wydaje się jak to zostało usunięte z jakiegoś powodu. Dlatego przyjąłem twoją odpowiedź, gdy zacząłem używać Termux i nadal używam go. – MariusR

+5

Dzięki. Zaskoczyło mnie, jak wiele musiałem zrobić, zanim dotarłem do referencji Termuxa. Ten wątek był jednym z pierwszych wyników, na które wpadłem, więc chciałem dodać go tutaj, aby dać następnemu użytkownikowi skrót;) – Pyro

+0

Wygląda na to, że dobrze jest usunąć zaakceptowaną odpowiedź z 11 upvotes na chronionym pytaniu prawdopodobnie dlatego, że była to odpowiedź "tylko link", więc prawdopodobnie ta również zostanie w pewnym momencie usunięta ... – jcesarmobile

1

samouczka, w jaki sposób budować NodeJS dla Androida https://github.com/dna2github/dna2oslab/tree/master/android/build
istnieje kilka wersji v0.12, v4, v6, v7

Łatwo uruchomić skompilowany plik binarny na Androida; na przykład uruchom skompilowany Nginx: https://github.com/dna2github/dna2mtgol/tree/master/fileShare

Wystarczy zmodyfikować kod, aby zastąpić Nginx NodeJS; lepiej jest, jeśli korzystasz z usługi Android, aby uruchomić serwer węzła js na zapleczu.

+0

** ..... modyfikuj kod w celu zastąpienia Nginx do NodeJS .... ** byłoby lepiej, gdybyś pokazał przykład, jak to zrobić. –

+0

tutaj jest przykład: https://github.com/dna2github/dna2mtgol/tree/master/nodeBase/platform –

2

Dory - node.js

Wielki Nowa aplikacja
Nie trzeba rootować telefonu i można uruchomić plik js z anywere.

  • node.js wykonawcze (run ES2015/ES6, ES2016 JavaScript i node.js API w Android)
  • API Dokumenty i natychmiastowy przebieg kodu z dokumentu
  • edytor składni kod podkreślając
  • podpory NPM
  • natywny plik binarny node.js i npm. nie trzeba być online.

(https://play.google.com/store/apps/details?id=io.tempage.dorynode&hl=en)

+0

wydaje się mieć pewne problemy z uruchomieniem npm install, skarżył się na brak dostępu do "/" i na przykład dostęp do odczytu FS. – Michael