在 Android 上运行 Node.Js

新手上路,请多包涵

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

  1. 在 Android 中运行 NodeJs 服务器
  2. 如何在 android 上运行我的 node.js 项目?

和 3. IOS/Android 上的 NodeJS

但是,提出的每个选项都有一个问题:

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

  • JXCore 上的工作上个月停止了,(也许结果)我无法编译它(请参阅 Can’t install jxcore-cordova

  • NodeJs Anode 的 Android 端口自 2014 年以来就没有工作过,而且当时也没有真正维护过

  • 我链接到的第二个线程中的第二个答案提到现在有一个适用于 Android 的官方节点分发,但除了指向 最新 dist 的浏览网站的 链接之外,我找不到任何关于如何实际使用它的信息

  • 我也看到了 这一点,但似乎设备必须连接到 PC(或类似设备)才能运行 adb shell 命令,而我想将其作为单独的应用程序

自从这些问题发布以来,作为“最佳选择”的 JXCore 现在似乎无法使用:

有没有办法在 Android 设备上运行 node.js 应用程序(在我的情况下是服务器)?

如果你想知道我为什么想要这个:我用 Node.Js 服务器制作了一个 WebApp,我现在想要一个可以从手机本地启动而无需 Internet 连接的版本。这意味着服务器需要在 Android 手机上运行。

原文由 MariusR 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 3.1k
2 个回答

我刚刚惊呆了 ——Termux 允许您在 Android 设备上安装 NodeJS!

它似乎适用于我手头的基本 Websocket 速度测试。它所服务的http既可以在本地访问,也可以在网络上访问。

有一个 中型帖子解释了安装过程

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

我遇到了一个限制 - 共享文件夹似乎没有安装模块的必要权限。它可能只是一个文件权限的事情。私人应用程序存储工作得很好。

原文由 Pyro 发布,翻译遵循 CC BY-SA 3.0 许可协议

您可以将 Node.js 用于移动应用程序

它适用于 Android 设备和模拟器,具有 armeabi-v7a、x86、arm64-v8a、x86_64 的预构建二进制文件。它也适用于 iOS,尽管这超出了这个问题的范围。

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

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

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

原文由 Alexis Campailla 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题