14

我正在寻找适用于使用HTML和JavaScript进行桌面应用程序开发的Titanium Appcelerator替代方案。我想将一个Web应用程序转换为桌面应用程序。因此,会有很多服务器交互。 Appcelerator是一个不错的选择,但看起来公司不再对Desktop SDK感兴趣。另外,Appcelerator的ajax请求不保留cookie。使用Javascript和HTML进行桌面应用程序开发

我读到Adobe Air可以用于桌面应用程序开发,但我不想使用闪存。

XULRunner有多好?它会允许像Growl notificaiton和创建托盘图标的功能吗?

我能在Qt中开发主要使用Javascript和HTML的应用程序吗?

+0

可能重复http://stackoverflow.com/questions/1252498/framework-for-html- js-desktop-client) – 2015-01-26 17:19:56

回答

9

我开始研究Titanium的桌面开发。我喜欢这个概念,但不喜欢这个实现。然后我偶然发现了染色体,并且对它大多非常满意。它基本上是一个基于铬的网页浏览器控件。 http://code.google.com/p/chromiumembedded/

它是用C++编写,所以你可以做你想做的低级别操作系统的东西(低吼,托盘图标,访问本地文件,COM端口等)在容器中的应用程序,然后将所有的应用程序逻辑和GUI在html/javascript中。它允许你拦截任何http请求来提供本地资源或执行一些自定义操作。例如,对http://localapp.com/SetTrayIconState?state=active的请求可能被容器拦截,然后调用C++函数更新托盘图标。

它还允许您创建可以直接从javascript调用的函数。

我最大的挑战是调试。在CEF中直接调试javascript非常困难。我没有意识到任何像Firebug的支持。

+1

chromiumembedded内存使用情况如何? – Jimmy 2011-05-16 06:48:26

1

你也可以检查Bowline这是另一种选择:http://bowlineapp.com/

+0

我正在寻找基于JS的平台。看起来Bowline需要Ruby。 – 2011-01-11 04:59:05

2

Appjs(appjs.org)看起来很有希望。

+0

看起来这个项目可能已经消失了? appjs.org网站不见了,虽然它仍然[在GitHub上](https://github.com/appjs/appjs),它看起来像5个月前停止开发... – peterflynn 2013-08-26 03:10:19

1

虽然它并非正式用于一般用途,但许多人已经成功使用brackets-shell用于HTML/JS桌面应用程序。它嵌入了Chromium(CEF)并添加了用于菜单栏管理和文件IO的API。它还嵌入了一个Node.js的实例,因此您可以访问其所有API以启动流程等。它是MIT许可的,可用于Mac,它的Linux版本目前正在快速发展。

正如我所说,这不是正式一个通用的应用程序的外壳,但有人写了detailed blog post有关如何自定义括号壳为自己的用途。

我注意到关于Titanum的另一个答案是CEF很难调试。我不确定在Titanium中这是否属实,但在括号外壳中很容易调试JS –,您只需打开http://localhost:9234/即可加载Chrome开发人员工具的完整实例(包括断点,概要分析等)。

+0

我看着博客文章,最后选了一个类似的opensource node-webkit:https://github.com/rogerwang/node-webkit。它的演示看起来很有希望:https://github.com/zcbenz/nw-sample-apps – 2014-08-09 14:57:00

相关问题