如何使用HTML / CSS / JavaScript开发桌面应用程序?[已关闭]西北.js

2022-08-30 01:27:25

首先,我对专业做这件事不感兴趣。我是一名网络开发人员,我的一位同事最近离开了Spotify,并表示他将主要使用JavaScript为Spotify Desktop应用程序工作。他说它使用“Chrome frame”,里面的一切都像一个网络应用程序(HTML /JS/CSS)一样完成。

作为一名从未为桌面构建过任何东西的Web开发人员,这是个好消息。如果我可以使用我已经知道的技术,并在某种“框架”中实现它们,并且仍然能够构建一个窗口或更好的跨平台应用程序。

我知道我没有提到任何关于数据库的事情,但即使是一个简单的带有Web技术的hello world桌面应用程序也会很棒。

那么,如何做到这一点呢?我到底需要/需要知道什么?


答案 1

您可以从Titanium开始进行桌面开发。你也可以看看Chromium Embedded Framework。它基本上是一个基于铬的Web浏览器控件。

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

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

直接在 CEF 中调试 JavaScript 是非常困难的。不支持像Firebug这样的东西。

您也可以尝试 AppJS.com(帮助构建桌面应用程序,用于使用HTML,CSS和JavaScript为Linux,Windows和Mac)

此外,正如@Clint所指出的那样,brackets.io(Adobe)的团队使用Chromium Embedded Framework创建了一个很棒的shell,使其更容易入门。它被称为支架外壳:github.com/adobe/brackets-shell 在这里了解更多信息:clintberry.com/2013/html5-desktop-apps-with-brackets-shell


答案 2

西北.js

(以前称为 node-webkit)

我建议NW.js如果你熟悉Node或有JavaScript的经验。

NW.js是基于 Chromium 和 node.js的应用运行时。

特征

  • 用现代HTML5,CSS3,JS和WebGL编写的应用程序
  • 完全支持 Node.js API 及其所有第三方模块。
  • 良好的性能:Node和WebKit在同一线程中运行:函数调用变得简单;对象位于同一堆中,可以相互引用
  • 易于打包和分发应用
  • 可在 Linux、Mac OS X 和 Windows 上使用

您可以在此处找到 NW.js 存储库,并在此处找到 NW.js的良好介绍。如果你喜欢学习Node.js我会推荐这个SO帖子,里面有很多好的链接。