Node-WebKit推送信息調研

Node-WebKit推送信息調研

番茄工做法的流程 

一、 父窗口與彈出框交互:傳/回參數。html

二、 消息框的觸發方式:時間/點擊。node

三、 基本流程:彈出下一個任務,是否繼續:Y/N,默認爲Yjquery

四、 實例git

Demo網址:github

http://alloyteam.github.io/AlloyTimer/web

改成消息彈出框的形式來表示chrome

Node-webkit的源碼

https://github.com/rogerwang/node-webkitjson

提供多個版本windows

0.9.2: (Feb 20, 2014, based off of Node v0.11.9, Chrome 32.0.1700.107) api

v0.10.0-rc2: (Jul 18, 2014, based off of Node v0.11.13, Chromium 35.0.1916.113) 

0.8.6: (Apr 18, 2014, based off of Node v0.10.22, Chrome 30.0.1599.66)

API說明:

https://github.com/rogerwang/node-webkit/wiki

node-webkit框架不支持window.notification,可是webkit內核是支持window.notification。爲何會不支持呢?

 

Window.webkitNotification

1、目前主流的web應用(QQ)的消息提醒都是由Window.webkitNotification實現的。

2chrome35版本(2014.5月末宣佈)後不支持Window.webkitNotification

Node-webkit version

0.8.6

0.9.2(NercOA)

0.10.0

Node.js version

0.10.22

0.11.9

0.11.13pre

Browser version

Chrome30.0.1599.66

Chromium32.0.1700.17

Chromium35.0.1916.113

Support webkitNotification

Х

Support notification

 

Window.Notifications

窗口應用的API

1Browser compatibility(兼容性)

  • Desktop

Feature

Chrome

Firefox (Gecko)

Internet Explorer

Opera

Safari

Basic support

5 webkit (see notes) 22

4.0 moz (see notes) 22

Not supported

?

6 (see notes)

2Chrome notes

 

現有的消息彈出框

1Chrome自帶的APP應用:Eye Rest Notification

 

2Chrome-app-samples/rich-notification

源碼:

https://github.com/GoogleChrome/chrome-app-samples/tree/master/rich-notifications

文檔:

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

 

NERCOA源文件

 

彈出窗口的觸發事件

nw-desktop-notifications-rest

nw-desktop-notifications-work

彈出框定義

alloytimer

node-webkit-chrome-api-stubs-master

chrome api 根是爲了node-webkit更好地調用現存的chromium app,保證明現常有的chrom apis功能,起碼不會拋出錯誤。

Node Webkit Notification

node-webkit 0.9.1不支持webkitNotifications,因此chrome API根經過改寫webkitNotification API 包裝了nw-desktop-notification 庫。

 

已經調通,父窗口彈出子窗口,子窗口帶有邊框。

A、 最新版本的node-webkit不能夠運行該程序

B、 nercOA1.5.3版本能夠運行該程序

 

源碼:

https://github.com/jamesmortensen/node-webkit-chrome-api-stubs

 

 

nw-desktop-notifications

已經調通,能夠在右上方彈出一個對話框。

注:須要修改index.htmlnw-desktop-notification.html的連接:

A、下載jquery.min.js文件

B、將修改成script src="./jquery.min.js"></script>

其是node-webkit-chrome-api-stubs-master消息推送的改進版本。

 

基於窗口的消息推送,有窗口邊框,將窗口邊框去除了。當最小化後,程序就關閉了;消息間的傳遞效果很差(贇鵬)。

源碼:

https://github.com/robrighter/nw-desktop-notifications

 

特色:不穩定,修改幾回代碼就會出現沒法彈出對話框。

關閉父窗口後,消息框不會自動消息(關閉父窗口時,消息框也須要關閉)

 

程序的流程:

Index.html—nw-desktop-notifications.js--nw-desktop-notification.html

node-desktop-notifications-master

未調試成功

須要使用到socket.io

Jquery.notification

基於windows notification內核的消息推送demo,在右側方彈出消息框,界面的效果好。能夠打開頁面,可是不能彈出消息。 

效果展現頁面:

http://azproduction.ru/jquery.notification/

源碼:

https://github.com/azproduction/jquery.notification

 

 

 

討論問題:

一、 node-webkit的消息推送有大量的依賴性

Take at notifications for node-webkit with a shitload of dependencies (Require.js, chaplin, TWEEN.js and so on).. sorry for that.

http://www.snip2code.com/Snippet/1525/Take-at-notifications-for-node-webkit-wi/

github的源碼:

https://gist.github.com/miklschmidt/5896306

 

2Node-webkit:子窗口調用父窗口

https://github.com/rogerwang/node-webkit/issues/456

 

 

附:node-webkit程序運行實例

You may also be interested in our demos repository and the List of apps and companies using node-webkit.

Quick Start

Create index.html:

<!DOCTYPE html>

<html>

  <head>

    <title>Hello World!</title>

  </head>

  <body>

    <h1>Hello World!</h1>

    We are using node.js <script>document.write(process.version)</script>.

  </body>

</html>

Create package.json:

{

  "name": "nw-demo",

  "main": "index.html"

}

Compress index.html and package.json into a zip archive called app.nw:

$ zip app.nw index.html package.json

This should create a structure like this:

app.nw

|-- package.json

`-- index.html

Download the prebuilt binary for your platform and use it to open the app.nw file:

$ ./nw app.nw

Note: on Windows, you can drag the app.nw to nw.exe to open it.

相關文章
相關標籤/搜索