将HTML5应用程序作为桌面应用程序分发

什么是分发基于HTML5的桌面应用程序的一些解决scheme?

我希望能够将我的HTML5应用程序作为Windows,OSX和Linux上的独立桌面应用程序分发。 我希望人们能够双击我的应用程序图标快捷方式来运行我的程序。

我不希望显示浏览器窗口,只是我的应用程序。 这可能吗?

2014年的HTML5应用程序

由chrome / webkit框架

  • 电子 (前primefaces壳)

    Electron是由GitHub开发的一个开源库,用于通过HTML,CSS和JavaScript构build跨平台的桌面应用程序。 Electron通过将Chromium和Node.js结合到一个运行环境中来实现这一点,并且可以为Mac,Windows和Linux打包应用程序。 ( 来源 )

    在github的人使用这个来提供他们的代码编辑器Atom作为一个应用程序。 它在官方primefaces论坛有一个logging的api和一个帮助通道。

  • Node-Webkit是最简单的方法

    node-webkit是基于Chromium和node.js的应用程序运行时。 您可以使用node-webkit在HTML和JavaScript中编写本机应用程序。 它还使您可以直接从DOM调用Node.js模块,并支持使用所有Web技术编写本地应用程序的新方法。

    英特尔在这背后(?)。 我被告知这是非常粗糙的边缘。

  • Adobes代码编辑器(以及Adobe Edge的基础)的沙箱Brackets Shell ,

    注:括号 – shell只保留供Brackets项目使用。 尽pipe有些人已经成功地将其用作其他项目的应用程序shell程序,但是我们没有提供任何官方的支持,我们也没有做大量的工作来使得应用程序shell程序易于重用。 很多人可能会觉得使用像devise更通用的node-webkit这样的项目更容易。

    自述说,但是还是有不less人在做这件事。

框架+工具

  • 作为另一个答案build议Adobe AIR 。

    Adobe®AIR®运行时使开发人员能够将相同的代码打包到适用于Windows和Mac OS桌面以及iPhone,iPad,Kindle Fire,Nook平板电脑和其他Android™设备的原生应用程序中,以超过5亿美元设备。

  • Sencha是一家为应用程序开发商销售工具的公司,其中包括html5应用程序的开发和分发。

无效的方法

  • Tide SDK ( 于2015-07-12在archive.org归档 )testing版, 于2015年7月12日终止

    http://www.tidesdk.org/

  • 来自Mozilla的XULRunner可能会为你做诀窍,但会增加一些开销。

  • app.js于2013年10月28日结束,被( https://github.com/rogerwang/node-webkit)[node-webkit]超越。

    因为它简单而强大。 使用AppJS,您不必担心编码跨平台或学习新的语言和工具。 您已经熟悉HTML,CSS和JavaScript。 有什么比这个应用程序开发堆栈更好? 除此之外,AppJS在核心使用Chromium,因此您可以使用最新的HTML 5 API。 所以要专注于你的应用程序应该做的任务。

  • Mozilla棱镜被拆除,他们的血块是:

    将Web应用程序带到您的桌面
    棱镜是一种应用程序,可让用户将Web应用程序从浏览器中分离出来,并直接在桌面上运行它们。

您可以使用使用Nodejs和Chromium的AppJS为桌面构buildhtml5应用程序。 检查出来: http: //appjs.com Github链接: https : //github.com/appjs/appjs

你可能想看看Mozilla的XULRunner。 在10000英尺的水平上,FireFox浏览器是一个XULRunner应用程序(显然是一个非常复杂的,但…)。 但XULRunner允许您使用Javascript和XML来创build应用程序,而浏览器窗口就是其中一个组件,所以一旦您获得了基本的窗口,就可以做任何你想做的事情。

另外,根据应用程序的复杂程度,还有几个“Widget”框架(如Mac上的Dashboard,Yahoo Widgets,Windows Gadgets),它们基本上也是HTML运行时。

肯定检查出titanium 。 就在今天,我采用了一个function强大的HTML5应用程序,只需进行一些小的修改就可以将其放入Titanium中,并将其打包成Mac,Windows和Linux。

如果您的应用程序需要“服务器端”处理,它也支持PHP,Python和Ruby。

铬可以做棱镜做什么看 – 工具 – >创build应用程序快捷方式

你可以试试Phonegap,有一个Windows桌面端口: https : //github.com/davejohnson/phonegap-windows

我试过了mac-port,运行的很好。 我没有尝试Windows版本。

Adobe AIR旨在让您主要在HTML,CSS和JavaScript中工作,同时提供桌面应用程序。 (注意:我自己实际上并没有使用它。)

[仅在Windows上]尝试使用HTML应用程序(HTA)方法 – 只需将.html文件保存为.hta扩展名即可。 它还提供了一些额外的设置来摆脱浏览器窗口,设置应用程序的信任级别等。更多在这里: http : //en.wikipedia.org/wiki/HTML_Application和这里http://technet.microsoft。; COM / EN-CA /脚本中心/ dd742317.aspx

嗯… HTML5 / CSS / JS的虚拟机…听起来像一个浏览器。 🙂

也许Adobe AIR可以做到这一点,因为它基于将富Internet应用程序引入桌面的想法。 但是我从来没有用过它。

有一件事你可以做的是开发一个非常基本的桌面应用程序,使用某种预打包的Web浏览器控制(例如,如果您正在开发一个Mac,只需在窗口中放置一个WebView,并添加一些基本的代码来加载您的HTML应用程序启动)。

从Mozilla中检查这个新项目。 您也可以创build桌面应用程序: https : //developer.mozilla.org/en/Apps

详细信息: http : //hacks.mozilla.org/2012/05/desktop-apps-with-html5-and-the-mozilla-web-runtime/

对于手机,您可以使用PhoneGap http://www.phonegap.com/ 。 可能与一些更多的编码,你可以使用它的桌面。

目前的答案是每个平台都有不同的解决scheme。

  • 对于MAC OSX您将创build一个带有UIWebView的Cocoa桌面应用程序
  • 对于Windows,您将使用浏览器组件创build一个.NET桌面应用程序。

你可以使用像Tomcat或者Apache这样的embedded式服务器。

我使用tomcat完成一个完整的java web应用程序。 在浏览器中运行,但应用程序需要安装。 启动应用程序的快捷方式,启动服务并打开浏览器。

或者尝试使用webkit

如果你只是需要它的Windows,你应该考虑HTML应用程序(HTA),自从IE 5(10多年)以来它一直是Internet Explorer的一部分。

无需服务器,完整的HTML格式,完全访问本地资源(甚至COM / USB端口),真棒。 另外,使用Visual Studio轻松debugging,只需绑定到MSHTA.exe即可

您可以使用以下元标记在HTA中启用HTML 5:

<!-- enable html5 features --> <meta http-equiv="X-UA-Compatible" content="IE=edge"></meta> 

有点晚,但你可以使用谷歌浏览器的便携版本,然后创build一个小型的Windows应用程序来安装它,并创build一个.ink快捷方式,以其–kiosk和应用程序模式。
有点像铬应用程序的快捷方式,但你在哪里安装铬他们。