【问题标题】:Desktop Wrappers for HTML5/JS AppsHTML5/JS 应用程序的桌面包装器
【发布时间】:2012-01-25 01:27:31
【问题描述】:

我目前正在开发一款 HTML5/JS 游戏,我想问一下是否有任何解决方案可以为游戏创建 EXE/App 包装器以运行独立游戏。

我计划使用 PhoneGap 在移动设备上获取它,但我也想在 Windows/Mac/Linux 上将它作为独立游戏发布在他们自己的窗口中。也许如果结果足够好,把它放在 Steam 和 Desura 上。

我听说 Titanium Desktop 是一种选择,但根据我在各种帖子中阅读的内容,它似乎已经过时或超级错误。虽然其他人提到了 Adob​​e AIR,但我不确定它的效果如何,或者它是否支持我需要的所有 JS。

所以我需要帮助来确定我想要做的事情是否有一个好的解决方案。

任何信息都有帮助。

【问题讨论】:

  • 我感觉你的问题可能会结束,但我还是会回复。

标签: javascript html


【解决方案1】:

我发现的最佳解决方案是NodeWebkit

它基本上是将 Google Chrome(实际上是 Chromium)封装到可自定义的 chromeless 界面中。它使用Node.js 作为后端(您可以进行数据存储、与系统交互...),因此您的优势在于两端都运行了快速的 V8 javascript 引擎。

由于它的核心只是普通的旧 Chromium,因此它可以流畅地运行任何在 Chrome 上运行的东西。

最初我建议AppJS,但我认为该项目从那时起就死了。 NodeWebkit 非常相似,但有一个更好的方法:它将 Node.JS API 直接引入客户端 javascript,因此一切都可以无缝运行。

【讨论】:

  • 网站宕机了,AppJS 还存在吗?
  • 我什至会请那些投反对票的人修改他们的投票(因为这似乎是一个非常有效的答案!)
  • 链接是 Node.js 而不是 node-webkit,也许你的意思是:github.com/rogerwang/node-webkit ?
  • 是的,Markdown 迷路了
  • 以上方法完全可以做到!我的回答有点过时了。
【解决方案2】:

我从http://www.appcelerator.com 那里听到了好消息。我还看到人们使用 webkit。或者使用内置 webkit 浏览器的 flex/as3/air。

我还听说过一些扩展/改进画布元素的自定义 html5 浏览器。

【讨论】:

  • 好吧,我有点倾向于那些,如果可能的话,我只是好奇哪个具有更好的稳定性和性能。并且它的 JS 实现限制最少,因为我还没有找到太多关于它的信息。只有那个 Air 不允许 Eval() 但我很可能不需要它,只有当我使用的库需要它时。但是我可以使用完成的 HTML5/JS 应用程序,只需最少的工作,将它们插入并构建最终输出吗?
  • 我会说是的。即使你不能,通过在 HTML 中做所有事情,你也可以很容易地在这些平台之间切换。在任何框架中编写其中一个包装器所需的代码量可能应该在 10 行左右(或多或少),并带有一些配置。我做了一些你在 iOS 中谈论的东西,我大概花了 30 分钟(在关于配置的头痛之后,说了又做了)。我对iOS或Objective C一无所知,只是在网上学习了一些教程。
  • 嗯,感谢您提供的信息,因为您花时间对此做出回应。我现在给你答案:)。我还记得 Adob​​e AIR 使用“.air”文件,所以这对我不起作用。我需要本机可执行文件。用于 Win 的 EXE、用于 Lin 的 Binary 和用于 Mac OSX 的 Mac App,Titanium Desktop 似乎能够做到。我只是希望有人能够接受他们正在尝试做的过渡,因为他们想放弃对桌面的支持并将其交给一个新的团队/赞助机构。我现在会继续使用它,希望它会成功。
【解决方案3】:

我推荐Electron 用于制作桌面应用程序包装器,它具有良好的docs 和许多社区驱动的第三方模块、示例和用例:https://github.com/sindresorhus/awesome-electron

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-31
    • 2012-06-16
    • 2012-08-30
    • 1970-01-01
    • 2014-08-15
    • 1970-01-01
    • 1970-01-01
    • 2011-11-13
    相关资源
    最近更新 更多