2015-04-16 36 views
15

我使用AJAX REST API构建了带有AngularJS/jQuery/Bootstrap的HTML应用程序。
是否有可能为Windows操作系统创建可执行文件/安装程序?如何将Web应用程序转换为桌面可执行文件?

没有任何第三方软件,它应该看起来像本机应用程序,但看起来像HTML。
例如,Slack messenger具有web/mac/windows版本,它们看起来一样。

任何想法?

// UPD

我可能需要一个包装(web视图),但我需要EcmaScript5/CSS3的所有功能。

+0

[HTML5游戏本机应用程序]的可能的复制(http://stackoverflow.com/questions/19075208/html5-game-to-native-app) –

回答

11

电子是easer方式:

1.安装电子

2.创建和编辑main.js:

const electron = require('electron'); 
const { app, BrowserWindow } = electron; 

let mainWindow; 

app.on('ready',() => { 
    mainWindow = new BrowserWindow({ 
     width: 1000, 
     height: 700 
    }); 

    mainWindow.setTitle('title of the desktop app'); 
    mainWindow.loadURL('http://www.yourwebpage.com'); 

    mainWindow.on('closed',() => { 
     mainWindow = null; 
    }); 
}); 

3.执行桌面应用程序:

electron main.js 

为了构建应用程序,请使用电子构建器等构建器。

希望对你有所帮助!

+2

它变成了一个真正的桌面应用程序还是只是一个特定于站点的浏览器? – Mojimi

-1

带着几分包装代码,你可以打包为Chrome应用。他们不需要在浏览器窗口中运行,但具有独立Web应用程序的所有功能。

https://developer.chrome.com/apps/about_apps

+0

谢谢你,但应用程序不应该依赖于第三方软件。 – Miraage

+0

谷歌刚刚宣布计划逐步淘汰除Chrome操作系统以外的每个平台上对Chrome应用程序的支持。 http://www.theverge.com/2016/8/19/12555052/google-shutting-down-chrome-apps – abe312

0

有一吨的框架存在,它可以包含你的Web应用程序转换成可以访问像一个操作系统的文件存储API事物的本机应用程序的。 This is the specific guide for Windows

虽然小心 - 你将需要花时间做你的本机应用程序坚实的测试和QA工作,所以它不觉得自己像一个天然的包装内的网站,以及与操作系统的所有版本很好地集成你想与之兼容。对于Mac,Tweetdeck是一个不能做的例子 - 基本上是一个本地包装器中的web浏览器)。

+0

是的,我需要一个包装,它将删除所有浏览器控件,并启动webview。但我需要支持EcmaScript5/CSS3的几乎所有功能。 – Miraage

+1

你能详细说明为什么你需要这个吗? Slack的应用程序是本机代码的结果,它具有不断更新的高质量开发工作超过1000小时。虽然它在外观和功能上看起来都是一样的,但与OS的集成(如咆哮通知)使用本地OS代码。 –

3

我自己一直在寻找一个全方位的解决方案。我尝试了TideSDK,AppJS,Appcelerator Titanium,VB.NET,XCode,Python,C++,Electron,node-webkit等本地代码中的所有内容:基本上,您将其命名为我已经尝试过。

注意电子是很好,但它只能在64位处理器上运行。因此,如果您想在32位处理器上运行您的应用程序,node-webkit就很好。

因此,我决定构建自己的开源解决方案WebDGap

当前WebDGap可以在Windows,Linux,Mac OS X,Google Chrome和Web应用程序上运行!

观看How To Video学习,以及明显如何使用该应用程序。

下面是截图。 The WebDGap Application

因为您已经是Mac用户了,您可以将导出的应用程序合并到1 .app mac文件中。这可以使用Automator(和一个小shell脚本)来完成。

另外还有一个我为移动用户制作的编码游乐场,它内置了此功能,名为kodeWeave

这里有一个井字棋游戏我要导出为Mac应用程序: kodeWeave App

现在的Web应用程序正在运行的原生Mac应用程序! Tic-Tac-Toe is now running as a Mac App

相关问题