在 Android 上运行 Node.Js

所以我知道这个问题已经被质疑了很多,确切地说,例如在这些问题中:

  1. 在 Android 中运行 NodeJs 服务器
  2. 如何在 android 上运行我的 node.js 项目?
    还有
  3. IOS/Android 上的 NodeJS

不过,提出的每一种选择都存在一个问题:

  • 我想在我的普通设备上运行它,所以我想避免在我的设备上安装另一个操作系统

  • 关于 JXCore 的工作上个月停止了(可能是因为这个原因) ,我无法编译它(参见 不能安装 jxcore-cordova)

  • NodeJs Anode的 Android 端口自2014年以来就没有开发过,而且当时也没有进行过维护
  • 我链接到的第二个帖子中的第二个答案提到,Android 现在有一个官方的节点分布,但除了一个到 浏览-最新地区网站的链接,我找不到任何关于如何实际使用它的信息
  • 我也看到了 这个,但似乎设备必须连接到一台 PC (或类似)来运行 adb shell 命令,而我想让它作为一个单独的应用程序

自从这些问题发布以来,作为“最佳选择”的 JXCore 似乎已经无法使用了:
有没有办法在 Android 设备上运行 node.js 应用程序(在我的例子中是服务器) ?

if you're wondering why I'd want this: I made a WebApp with a Node.Js server and I now want a version you can launch locally from your phone without requiring an Internet connection. This means the server needs to run on an Android phone.

195050 次浏览

如何为安卓系统构建 NodeJS 的教程 < a href = “ https://github.com/dna2github/dna2oslab/tree/master/Android/build”rel = “ nofollow norefrer”> https://github.com/dna2github/dna2oslab/tree/master/Android/build
有几个版本 v0.12,v4,v6,v7

It is easy to run compiled binary on Android; for example run compiled Nginx: https://github.com/dna2github/dna2mtgol/tree/master/fileShare

您只需要修改代码,将 Nginx 替换为 NodeJS; 最好使用 Android Service 在后端运行 NodeJS 服务器。

I just had a jaw-drop moment - 特穆克斯 allows you to install NodeJS on an Android device!

它似乎工作的基本 Websocket 速度测试我手头上。它提供的 http 可以在本地和网络上访问。

有一个 解释安装过程的中间柱

基本上: 1. 安装 termux 2. apt install nodejs 3节点!

我遇到了一个限制——共享文件夹似乎没有安装模块所需的权限。可能只是文件许可的问题。私人应用程序存储工作正常。

J2V8是解决问题的最佳方案,它在 jvm (java 和 android)上运行 Nodejs 应用程序。

J2V8 is Java Bindings for V8, But Node.js integration is available in J2V8 (version 4.4.0)

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

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

Dory-node.js

伟大的新应用
不需要根你的电话,你可以运行你的 js 文件从任何人。

  • Js 运行时(在 android 中运行 ES2015/ES6、 ES2016 javascript 和 node.js API)
  • API 文档和即时代码从 doc 运行
  • 语法突显代码编辑器
  • Npm 支持
  • Linux 终端(toybox0.7.4) . node.js REPL 和 npm 命令 (如果在/sdcard 中执行 npm,则添加’—— no-bin-links’选项)
  • StartOnBoot/LiveRelload
  • 本机 node.js 二进制和 npm 包含。不需要在线。

将指令更新到节点 js8(异步等待)

  1. 下载 node.js v8.3.0 arm zip 文件并解压缩。

  2. 将“ node”复制到 android 的 sdcard (/sdcard 或/sdcard/path/to/...)

  3. 打开 shell (在应用程序的菜单中查看)

  4. Cd/data/user/0/io.tmpage.dorynode/files/bin (或者,只需键入 cd & & cd. . & & cd files/bin)

  5. rm node

  6. Cp/sdcard/node.

  7. (chmod a + x node

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

你可以使用 < strong > Node.js for Mobile Apps

它可以在 Android 设备和模拟器上运行,预先为 armeabi-v7a、 x86、 arm64-v8a、 x86 _ 64构建了二进制文件。它也可以在 iOS 上运行,尽管这超出了这个问题的范围。

与 JXcore 一样,它用于将 Node.js 引擎托管在与应用程序相同的进程中的一个专用线程中。与 JXcore 不同,它基本上是纯粹的 Node.js,构建为一个库,并在 Android 上运行一些可移植性修复。这意味着使用主线 Node.js 更容易保持项目的最新状态。

科尔多瓦本土反应的插件也可以使用。这些插件在框架的 JavaScript 端和 Node.js 端之间提供了一个通信层。它们还通过自动处理一些事情来简化开发,比如在构建时打包模块和交叉编译本机模块。

充分披露: 我在为移动应用开发 Node.js 的公司工作。

安卓前端

  • 释放 包括已签署的 apks
  • Android 4.4 +
  • 开放源码(GPLv2)
  • 没有根
  • JaneaSystems 为 适用于移动应用的 Node.js提供前端服务
    • 它的一个开发人员在这个线程中使用的是 早前宣布
    • 这是一个游戏规则改变者; 伟大的工作!
  • 在高层次上:
    • "exec in same process"标签:
      • 包括一个 Node.js 应用程序列表,这些应用程序打算在应用程序保持打开状态的短时间内运行,并且一次只能执行一个应用程序
    • the “分叉到分离过程” tab:
      • 包括一个 Node.js 应用程序列表,每个应用程序在一个不同进程的单独前台服务中执行,并用于保存长时间运行的守护进程(例如: 各种类型的服务器)

screenshots animation