node.js 和HTML5開發(fā)本地桌面應(yīng)用程序
HTML5讓W(xué)eb開發(fā)人員用純HTML技術(shù)開發(fā)富客戶端互聯(lián)網(wǎng)應(yīng)用或者甚至本地桌面應(yīng)用成為了可能。HTML5可以將任何普通網(wǎng)站轉(zhuǎn)變成Web應(yīng)用。HTML5 web 應(yīng)用不僅具有在桌面瀏覽器應(yīng)用中的優(yōu)勢,同時在智能手機和平板中也是開發(fā)利器。
在手機端,有一個非常棒的工具叫做PhoneGap,使用這個快速開發(fā)平臺,任何人都可以使用HTML5+CSS3+JavaScript開發(fā)出安卓,iOS等應(yīng)用。PhoneGap的最好的一個特點是,你并不需要聯(lián)網(wǎng),不需要連接web服務(wù)器,你可以從把它當(dāng)成本地桌面應(yīng)用。一旦下載到本地,它和本地原生應(yīng)用一樣可以離線使用。
通常我們會感覺網(wǎng)上有很多有趣的HTML應(yīng)用,但這些應(yīng)用非要你打開瀏覽器,輸入網(wǎng)址。其實我們更喜歡直接點擊桌面的一個圖標(biāo)就啟動一個程序的這種體驗。用HTML5+js開發(fā)的本地桌面應(yīng)用就是要提高給用戶這種體驗,除了上面說的PhoneGap,還有一些像Pokki和Chrome Package Apps或Mozilla XUL Runner都是開發(fā)HTML5本地桌面應(yīng)用的框架。
Pokki和Chrome不僅可以用來開發(fā)HTML5桌面應(yīng)用,而且可以把這些應(yīng)用放到交易市場中。
另外一個有趣的工具是Node-Webkit,本文下面內(nèi)容主要討論的將是它。
Node-Webkit是一個基于Chromium和Node.js運行平臺。它能讓你把HTML5應(yīng)用打包成本地桌面應(yīng)用或游戲安裝到Windows、Linux或Mac系統(tǒng)中。Node-Webkit項目是由英特爾開源技術(shù)中心開發(fā),發(fā)起人是王文睿。
為什么Node-WebKit是開發(fā)HTML5本地桌面應(yīng)用的最佳選擇
- Node-WebKit能把你的HTML5應(yīng)用打包成本地桌面應(yīng)用,在Windows、Linux或Mac平臺上,你不需要其它依賴就可以獨立運行你的HTML5應(yīng)用。
- 它支持Node.js。你可以使用Node.js的所有模塊來開發(fā)你喜歡的app或游戲。不僅你可以使用Node.js原生的模塊,而且可以使用第三方的node.js模塊。
如何使用Node-Webkit開發(fā)HTML5本地桌面應(yīng)用
這非常簡單,像傳統(tǒng)的開發(fā)你的HTML5應(yīng)用一樣開發(fā)它們,完成之后用Node-Webkit打包它。打包的方法是
1.先下載Node-Webkit
2.然后創(chuàng)建一個包文件命名為package.json, 寫入下面的代碼:
{
"name": "nw-demo",
"main": "index.html"
}
這里的“name”是你應(yīng)用的名稱,“main”是你的應(yīng)用的啟動文件,也就是應(yīng)用啟動是第一加載的文件。
3.將你的HTML5應(yīng)用文件和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.想讓你的應(yīng)用更容易傳播和發(fā)布,可以將它和node-webkit封裝到一起,也就是將你的HTML5應(yīng)用 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文檔,里面有更詳細的介紹。希望這篇文章對你有所幫助。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
node.js通過axios實現(xiàn)網(wǎng)絡(luò)請求的方法
下面小編就為大家分享一篇node.js通過axios實現(xiàn)網(wǎng)絡(luò)請求的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-03-03
node?NPM庫promise?異步任務(wù)狀態(tài)管理
這篇文章主要介紹了node?NPM庫promise?異步任務(wù)狀態(tài)管理2023-07-07
Nodejs實現(xiàn)多人同時在線移動鼠標(biāo)的小游戲分享
這篇文章主要介紹了Nodejs實現(xiàn)多人同時在線移動鼠標(biāo)的小游戲分享,本文給出了服務(wù)器端和客戶端代碼以及運行方法,需要的朋友可以參考下2014-12-12
npm ERR! code ELIFECYCLE錯誤及解決方法
有時候在使用npm運行命令時,可能會遇到錯誤,本文主要介紹了npm ERR! code ELIFECYCLE錯誤及解決方法,具有一定的參考價值,感興趣的可以了解一下2024-05-05

