在iOS / Android中运行node.js.

时间:2015-09-07 14:24:11

标签: android ios node.js jxcore

是的,问题似乎有点奇怪(为什么要在移动设备上运行服务器而不是通过REST服务访问服务器),但我仍然希望得到你的意见,我真的需要它来运行设备

目前我发现jxcore(https://github.com/obastemur/jxcore-android-basics)允许在Android和iOS中运行node.js。但我还没有测试过它。

那么,如何在iOS / Android平台上运行node.js?

5 个答案:

答案 0 :(得分:2)

JXcore是一个专门用于移动(android,ios和wp)和IoT的node.js的分支。请参阅this blog post了解App Store上的第一个node.js移动应用程序。

对于初学者,请在移动设备上使用带有Cordova的node.js阅读此存储库的README。如果您使用谷歌jxcore和移动设备,您应该在网上找到一些教程和示例。

答案 1 :(得分:2)

截至今天,有一个替代JXcore:Node.js for Mobile Apps,并且它得到了积极维护。

该项目的核心是提供一个本地库,用于将Node.js嵌入到原生Android和iOS应用程序中;但它还附带了React NativeCordova的插件。

该库的预构建二进制文件适用于Android armeabi-v7a,x86,arm64-v8a,x86_64和iOS 64位。

核心库是nodejs/node-chakracore的分支,后者又是nodejs/node的分支。 Android版本是非常常规的Node.js构建为库,具有一些可移植性修复。 iOS版本使用ChakraCore引擎而不是V8(由于nodejs / node-chakracore fork的更改,可以用ChakraCore替换V8。)

React Native和Cordova插件可以更轻松地将Node.js添加到使用这些框架构建的应用程序中。 Node.js代码在一个独立的引擎和线程中运行,而不是框架(React Native / Cordova)。两个JavaScript世界之间的通信是通过插件提供的消息传递桥实现的。

project website上提供了更多信息,包括一些文档。

(完全披露:我为开发移动应用程序的Node.js的公司工作。)

答案 2 :(得分:0)

当您下载源代码时,您会找到android-configure,所以至少对于Android来说,如果您自己编译它,它是可能的。对于iOS,我不知道。 Someone managed to get it to work on iOS 4年前,所以它似乎是可能的。另请参阅this related question

问这个问题的正确位置可能是one of the Node.js mailing lists,因为你可能需要深入参与Node.js的人的帮助。

如果您要定位iOS App Store,请记住您可以运行解释程序(根据定义解释JavaScript),但不允许您运行下载的代码。 Node.js运行的所有内容都必须已包含在应用包中。

答案 3 :(得分:0)

还有另一种选择:LiquidCore

LiquidCore使Node.js虚拟机可以在Android和iOS应用程序中运行。它提供了完整的运行时环境,包括虚拟文件系统和本机SQLite支持。

LiquidCore是8.9+节点的完整端口,并支持所有功能。

答案 4 :(得分:-2)

可以为ARM构建Node.js,但其他解决方案更好 - 只需使用webView,就像基于Android的Chrome和基于Safari的iOS一样。