我使用带有AJAX REST API的AngularJS / jQuery / Bootstrap构建HTML应用程序。
是否可以为Windows操作系统创建可执行文件/安装程序?
没有任何第三方软件,它应该看起来像本机应用程序,但HTML 例如,Slack messenger有web / mac / windows版本,它们看起来相同。
有什么想法吗?
// UPD
我可能需要一个包装器(webview),但我需要EcmaScript5 / CSS3的所有功能。
答案 0 :(得分:16)
电子是最简单的方法:
<强> 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
要构建应用程序,请使用构建器,例如电子构建器。
希望能帮到你!
答案 1 :(得分:6)
我自己一直在寻找一个全方位的解决方案。我尝试了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以了解如何使用该应用程序。
这是截图。
由于您已经是Mac用户,因此您可以将导出的应用程序合并到1个.app mac文件中。这可以使用Automator(以及一些shell脚本)来完成。
我还为移动用户制作了一个编码操场,内置了这个名为kodeWeave的功能。
答案 2 :(得分:2)
您必须稍微重写您的应用,但apache cordova支持部署到Windows:
答案 3 :(得分:1)
(完全公开,我是ToDesktop的创始人,在这里我将努力做到客观公正。)
与计算机科学一样,答案是“取决于”!
您应该问自己的第一个问题是:谁在使用桌面应用程序? 就是你?或者,您是向客户分发应用程序吗?因为这两个部分有非常不同的需求。
就是你
这里有很多选项(不分先后):
分发给客户
在创建要分发给客户的桌面应用程序时,还有一些其他注意事项变得越来越重要:
上述工具没有提供这些功能,因此它们并不真正适合将应用程序分发给客户的用例。这些是我们在构建 ToDesktop 时要添加的功能,因此我认为它非常适合此用例。我们一直在增加功能,上周我们增加了对App Protocols and Deeplinks的支持。
答案 4 :(得分:0)
有大量的框架可以将您的Web应用程序包装到本机应用程序中,该应用程序可以访问操作系统的文件存储API等内容。 This is the specific guide for Windows
请注意 - 您需要花时间为本机应用程序进行可靠的测试和QA工作,这样它就不会像本机包装器中的网站一样,并且可以很好地与所有应用程序集成您希望与之兼容的操作系统版本。 Mac的Tweetdeck是一个不做的示例 - 基本上是本机包装器中的Web浏览器。)
答案 5 :(得分:0)
答案 6 :(得分:0)
我所知道的最简单,最快捷的方法是使用nodejs / npm的nativefier库,该库是electronjs的基础。创建Windows可执行文件仅需5分钟。即使没有编程经验的人也可以从Web应用程序创建桌面应用程序。下面提到的帖子描述了将Web应用程序转换为桌面应用程序的步骤。必须阅读!
Convert any web application to desktop application in 2 min using npm’s nativefier
答案 7 :(得分:-1)
使用一些封装代码,您可以将其打包为Chrome应用。它们不需要在浏览器窗口中运行,而是具有独立的Web应用程序的所有功能。
答案 8 :(得分:-1)
将Web转换为Exe的最佳方法是使用nativefier:
nativefier --name "Inventory Management System" "http://localhost/php_stock_zip/php_stock_zip/php_stock/" -i ./icon.png -p windows
步骤:
安装要求 * macOS 10.9+ / Windows / Linux * Node.js> = 6(4.x可能有效,但不再经过测试,请升级) 有关更多信息,请参见可选依赖项
步骤5:npm install nativefier -g
最后键入nativefier“ Web Link”