node.js 和HTML5開發(fā)本地桌面應用程序
HTML5讓Web開發(fā)人員用純HTML技術開發(fā)富客戶端互聯(lián)網(wǎng)應用或者甚至本地桌面應用成為了可能。HTML5可以將任何普通網(wǎng)站轉變成Web應用。HTML5 web 應用不僅具有在桌面瀏覽器應用中的優(yōu)勢,同時在智能手機和平板中也是開發(fā)利器。
在手機端,有一個非常棒的工具叫做PhoneGap,使用這個快速開發(fā)平臺,任何人都可以使用HTML5+CSS3+JavaScript開發(fā)出安卓,iOS等應用。PhoneGap的最好的一個特點是,你并不需要聯(lián)網(wǎng),不需要連接web服務器,你可以從把它當成本地桌面應用。一旦下載到本地,它和本地原生應用一樣可以離線使用。
通常我們會感覺網(wǎng)上有很多有趣的HTML應用,但這些應用非要你打開瀏覽器,輸入網(wǎng)址。其實我們更喜歡直接點擊桌面的一個圖標就啟動一個程序的這種體驗。用HTML5+js開發(fā)的本地桌面應用就是要提高給用戶這種體驗,除了上面說的PhoneGap,還有一些像Pokki和Chrome Package Apps或Mozilla XUL Runner都是開發(fā)HTML5本地桌面應用的框架。
Pokki和Chrome不僅可以用來開發(fā)HTML5桌面應用,而且可以把這些應用放到交易市場中。
另外一個有趣的工具是Node-Webkit,本文下面內容主要討論的將是它。
Node-Webkit是一個基于Chromium和Node.js運行平臺。它能讓你把HTML5應用打包成本地桌面應用或游戲安裝到Windows、Linux或Mac系統(tǒng)中。Node-Webkit項目是由英特爾開源技術中心開發(fā),發(fā)起人是王文睿。
為什么Node-WebKit是開發(fā)HTML5本地桌面應用的最佳選擇
- Node-WebKit能把你的HTML5應用打包成本地桌面應用,在Windows、Linux或Mac平臺上,你不需要其它依賴就可以獨立運行你的HTML5應用。
- 它支持Node.js。你可以使用Node.js的所有模塊來開發(fā)你喜歡的app或游戲。不僅你可以使用Node.js原生的模塊,而且可以使用第三方的node.js模塊。
如何使用Node-Webkit開發(fā)HTML5本地桌面應用
這非常簡單,像傳統(tǒng)的開發(fā)你的HTML5應用一樣開發(fā)它們,完成之后用Node-Webkit打包它。打包的方法是
1.先下載Node-Webkit
2.然后創(chuàng)建一個包文件命名為package.json, 寫入下面的代碼:
{ "name": "nw-demo", "main": "index.html" }
這里的“name”是你應用的名稱,“main”是你的應用的啟動文件,也就是應用啟動是第一加載的文件。
3.將你的HTML5應用文件和package.json一起打包成zip
4.重命名zip文件,將其后綴變成 .nw ,比如app.nw
5.現(xiàn)在你就可以用node-webkit runtime來運行你的app了在Linux上的運行命令是
./nw app.nw
在Windows平臺上你可以直接把你的app.nw拖拽到 nw.exe 程序上就行了。
6.想讓你的應用更容易傳播和發(fā)布,可以將它和node-webkit封裝到一起,也就是將你的HTML5應用 app.nw 和 nw.exe 合成一個可執(zhí)行文件。在Linux上的做法是
cat /usr/bin/nw app.nw > app && chmod +x app
在Window上的做法是
copy /b nw.exe+app.nw app.exe
你可以看看這個wiki文檔,里面有更詳細的介紹。希望這篇文章對你有所幫助。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關文章
nodejs結合Socket.IO實現(xiàn)websocket即時通訊
websocket 是一種網(wǎng)絡通信協(xié)議,一般用來進行實時通信會使用到。本文主要介紹了nodejs結合Socket.IO實現(xiàn)websocket即時通訊 ,感興趣的可以了解一下2021-11-11解決npm管理員身份install時出現(xiàn)權限的問題
下面小編就為大家分享一篇解決npm管理員身份install時出現(xiàn)權限的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-03-03nodejs實現(xiàn)的http、https 請求封裝操作示例
這篇文章主要介紹了nodejs實現(xiàn)的http、https 請求封裝操作,結合實例形式分析了node.js針對http、https 請求的封裝與使用相關操作技巧,需要的朋友可以參考下2020-02-02Node.js事件循環(huán)(Event Loop)的使用
事件循環(huán)是其非阻塞I/O和高并發(fā)能力的核心機制,本文主要介紹了Node.js事件循環(huán)(Event Loop)的使用,具有一定的參考價值,感興趣的可以了解一下2024-05-05