如何在Android或ios移动设备上运行Nodejs运行时

时间:2016-07-04 21:31:22

标签: android ios node.js ionic-framework

我正在尝试使用Ionic Framework为iOS / android开发一个chrome-cast应用程序,为此我在我的应用程序中需要很少的NodeJS包。它在我的桌面上工作,但我不确定它将如何在没有Node运行时可用的移动设备上运行。所以第一个问题是如何在iOS / Android设备上安装或提供NodeJS运行时,以及以后是否可以使用iOS / Android应用程序包打包。

6 个答案:

答案 0 :(得分:6)

您可以使用 JXCore 在带有PhoneGap的移动设备上使用Express运行Node.js,这是教程的链接以及有关JXCore的更多详细信息:https://www.sitepoint.com/how-to-run-node-js-with-express-on-mobile-devices/

答案 1 :(得分:3)

您可以使用Node.js for Mobile Apps

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

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

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

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

答案 2 :(得分:1)

在Android上运行NodeJS(以及Python,gcc等其他功能)的最佳方法是通过Termux,它为您提供了一个完整的Linux终端。我很惊讶没有人将链接放在这里。 (与我无关)

它还为您提供API,以访问GPS并发送可通过NodeJS脚本调用的通知。

我已使用它在Android手机上运行各种nodejs应用程序,包括this one

答案 3 :(得分:0)

有人尝试在iOS上运行Node-Chakracore(MS Edge Browser Engine)。您可以在Microsoft blog上找到该文章。以下是YouTube video的链接。

答案 4 :(得分:0)

您可以使用LiquidCore在iOS和Android上运行Node。

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

LiquidCore是节点8.9+的完整端口,并支持所有功能。在iOS上,其魔力来自名为V82JSC的翻译层,它的功能完全一样。 V8调用在运行时转换为Apple自己的JavaScriptCore,从而可以在不更改Node中代码的情况下编译Node。这样可以更快地移植更新版本的Node,并且减少了错误。

答案 5 :(得分:-3)

NodeJS用于开发服务器端Web应用程序。 NodeJS只是Chrome V8 JavaScript引擎的扩展版本。因此,没有在移动设备上提供NodeJS运行时的功能。

但是,您的Ionic应用程序能够理解JavaScript代码,因为它在WebView上运行。 NodeJS软件包也可以在浏览器上运行,而不是特定于Node的(例如,Bootstrap,AngularJS,lodash等)。对于那些类型的包,可以使用您的Ionic应用程序(包括iOS和Android)打包/包含该包。此外,还有一些NodeJS包用于构建您的Ionic应用程序(例如Sass,Gulp等)。因此,它实际上取决于您使用的NodeJS包的类型以及它是否可以在浏览器上运行。