Nodo en ejecución.Js en Android


Así que sé que esto ha sido cuestionado bastante. Para ser exactos, por ejemplo en estas preguntas:

  1. Ejecute el servidor NodeJS en Android
  2. Cómo ejecutar mi nodo.proyecto js en Android?
    y
  3. NodeJS en IOS / Android

Cada opción presentada tiene un problema:

  • Quiero ejecutarlo en mi dispositivo normal, así que me gustaría evitar instalar otro sistema operativo en mi dispositivo

  • Trabajar en JXcore se detuvo el mes pasado y (tal vez como resultado) No pude compilarlo (ver No puedo instalar jxcore-cordova)

  • El puerto Android de NodeJS Anode no se ha trabajado desde 2014 y no se mantuvo realmente en ese entonces de todos modos
  • La segunda respuesta en el segundo hilo al que enlacé mencionó que ahora hay una distribución de nodos oficial para Android, pero aparte de un enlace al Sitio web de navegación de la última dist No pude encontrar ninguna información sobre cómo realmente usarlo
  • También vi esto pero parece que el dispositivo tiene que estar conectado a un PC (o similar) para ejecutar los comandos de shell adb, mientras que me gustaría hacerlo como una aplicación separada

Con el tiempo que pasó desde que se publicaron estas preguntas y como la "mejor opción", JXcore parece ahora inutilizable:
Hay una manera de ejecutar un nodo.aplicación js (un servidor en mi caso) en un dispositivo Android?

Si te estás preguntando por qué querría esto: Hice una aplicación web con un Nodo.Js server y yo ahora queremos una versión que pueda lanzar localmente desde su teléfono sin necesidad de una conexión a Internet. Esto significa que el servidor debe ejecutarse en un teléfono Android.

Author: Arnold Schrijver, 2016-04-14

5 answers

Acabo de tener un momento alucinante - Termux le permite instalar NodeJS en un dispositivo Android!

Parece funcionar para una prueba de velocidad básica Websocket que tenía a mano. El http servido por él se puede acceder tanto localmente como en la red.

Hay un mensaje medium que explica el proceso de instalación

Básicamente: 1. Instalar termux 2. apt install nodejs 3. nodo it up!

Una restricción que he encontrado-parece que las carpetas compartidas no tiene los permisos necesarios para instalar módulos. Podría ser un permiso de archivo. El almacenamiento privado de aplicaciones funciona bien.

 50
Author: Pyro,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-08-18 09:49:23

J2V8 es la mejor solución de su problema. Se ejecuta la aplicación Nodejs en jvm (java y android).

J2V8 son enlaces Java para V8, Pero Nodo.la integración de js está disponible en J2V8 (versión 4.4.0)

Github: https://github.com/eclipsesource/J2V8

Ejemplo : http://eclipsesource.com/blogs/2016/07/20/running-node-js-on-the-jvm/

 7
Author: pathik devani,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-04-28 09:45:59

Dory-node.js

Gran Nueva Aplicación
No Es Necesario rootear su Teléfono y Puede Ejecutar su Archivo js Desde cualquier lugar.

  • nodo.js runtime (ejecutar ES2015 / ES6, ES2016 javascript y nodo.api de js en android)
  • Los documentos API y el código instantáneo se ejecutan desde doc
  • editor de código de resaltado de sintaxis
  • npm soporta
  • nodo nativo.js binary y npm están incluidos. no hay necesidad de estar en línea.

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

 6
Author: Sedric Heidarizarei,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-09-19 18:37:35

Puede utilizar Nodo.js para Aplicaciones Móviles.

Funciona en dispositivos Android y simuladores, con binarios prediseñados para armeabi-v7a, x86, arm64-v8a, x86_64. También funciona en iOS, aunque eso está fuera del alcance de esta pregunta.

Al igual que JXcore, se utiliza para alojar un nodo.motor js en el mismo proceso que la aplicación, en un hilo dedicado. A diferencia de JXcore, es básicamente Nodo puro.js, construido como una biblioteca, con algunas correcciones de portabilidad para ejecutarse en Android. Esto significa que es mucho más fácil mantener el proyecto actualizado con mainline Node.js.

Plugins para Cordova y React Native también están disponibles. Los plugins proporcionan una capa de comunicación entre el lado JavaScript de esos frameworks y el Nodo.lado js. También simplifican el desarrollo al hacerse cargo de algunas cosas automáticamente, como empaquetar módulos y compilar módulos nativos en el momento de la compilación.

Divulgación completa: Trabajo para la empresa que desarrolla Nodo.js para Aplicaciones Móviles.

 6
Author: Alexis Campailla,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-04-13 11:42:59

El tutorial de cómo construir NodeJS para Android https://github.com/dna2github/dna2oslab/tree/master/android/build
hay varias versiones v0.12, v4, v6, v7

Es fácil ejecutar binarios compilados en Android; por ejemplo ejecutar Nginx compilado: https://github.com/dna2github/dna2mtgol/tree/master/fileShare

Solo necesita modificar el código para reemplazar Nginx a NodeJS; es mejor si usa el servicio Android para ejecutar el servidor node js en el backend.

 1
Author: Doz Parp,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-08-03 07:37:18