目前是否有任何引擎可以将JavaScript编译为具有图形支持的独立应用程序?

时间:2010-12-08 15:21:16

标签: javascript canvas v8

我见过像Mozilla Rhino这样的东西,或者在内部使用V8。我真正想要的是一个解决方案,我基本上可以为PC编写独立的Canvas应用程序。钛是好的,但我不喜欢最终的结果。基本上我正在寻找能够使用JS编写PC客户端应用程序以及编译成应用程序的能力。我不想要所有资源对任何人来说都是完全开放的东西,只需要采取/改变并重新发布为他们自己。如果我选择的话,大图是可以选择通过游戏获利。目前有没有那样的东西?

5 个答案:

答案 0 :(得分:1)

Adob​​e AIR 2.5支持canvas标记。它使用Webkit,但它不支持当前Webkit浏览器的某些功能。如视频/音频标签,svg。以下是AIR中Webkit构建的支持/不支持功能的 decent list

答案 1 :(得分:1)

这是一个相当古老的问题,但我想对我发现的内容给出更新的答案。您可以使用QT来完成此操作。您在窗口中包含一个webkit小部件,并通过嵌入到应用程序中的资源文件加载您的js / html / images。

http://www.somethinghitme.com/2012/03/29/turning-canvas-games-into-executables/

我喜欢Air解决方案的这个解决方案,因为您的所有资产都可以被包含和隐藏。

答案 2 :(得分:1)

我之前回答的更好方法是使用nodeWebkit

以上使用QT的方法有以下好处。

  • 不需要像QT那样的单独IDE
  • 完全不需要样板代码,如QT
  • 非常容易将所有依赖项和资源打包成一个可执行文件
  • 使用V8并定期更新以保持最新,与QT的实施不同

对于画布,我特意将它用于游戏grapple hero,Rezoner将其用于他的游戏qbqbqb。在野外还有更多的例子。它是今天最好的解决方案。

答案 3 :(得分:0)

我会尝试XULRunner。每当我不想编写整个应用程序时,我就会使用它,并且它运行良好。 XUL是一种类似XML的标记语言,用于布局。这是一些示例代码:

<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>

<window id="vbox example" title="Example 3...."
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
  <vbox>
    <button id="yes" label="Yes"/>
    <button id="no" label="No"/>
    <button id="maybe" label="Maybe"/>
  </vbox>
</window>

CSS用于样式化应用程序,JavaScript用于后端。编码非常简单,整个应用程序就像一个独立的网站。我用它编写了一些下载管理器,但您只需稍加修改即可将HTML <canvas>直接迁移到代码中。

要构建应用程序,只需将布局和功能文件放入一个文件夹中,可以选择从中创建一个JAR,然后将其复制到XULRunner目录中。你只需运行可执行文件,就可以了。最重要的是,相同的代码适用于Windows,Mac OS和Linux。

祝你好运!

(这是XULRunner的最佳参考,因为它是Mozilla的宝贝:https://developer.mozilla.org/en/xulrunner


等等,你在谈论iPhone吗?您应该标记为:如果您是... XULRunner 可用于除iOS之外的所有平台。这不是让你爱上苹果吗?

答案 4 :(得分:0)

jslibs是一个独立的JavaScript运行时(基于Firefox JavaScript引擎),支持OpenGL(以及许多其他第三方库)。