目錄:
1. Push notification 簡介
2. Push notification工作流程
3. Cloud Service伺服器搭建
4. Push notification用戶端的實作
5. Push notification示範
1. Push notification簡介
何為"Push notification"? 顧名思義,"Push notification"就是"推送消息"的意思。那它和傳統的App内容更新機制有什麼差別呢?
傳統的App通過向雲端發送請求的方式來擷取更新消息,然後利用它們來更新自己的内容。Push notification是指當伺服器端有更新時,伺服器可以将消息推送至終端裝置,不需要用戶端發送請求來擷取消息。Push notification有多種實作:iOS的消息推送機制(通過Apple Push Notification Service),Android等等。在Win8上,微軟通過WNS(windows push notification service)來實作。即伺服器發送消息給微軟的WNS伺服器,然後WNS把消息推送給App,讓App完成更新。
在微軟最新釋出的Windows 8 Release Preview中,微軟提供了Windows Push Notification Service(WNS)來支援第三方開發人員從自己的伺服器發送toast, tile和badge的更新消息給metro style app。Push notification的工作原理如下圖所示:
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIn5Gcug2c1B3LchzLcR2LcFzLcRzLcR2Lc12LcNXZslmZvwFdsVXYmVGZvw1clRXaz9CXt92YuwWZ05WauUmchdHdm92cvw1LcpDc0RHaiojIsJye.png)
圖1:
在圖1中,包含"Windows"字樣的紫色框即為運作metro app的用戶端,它由兩部分組成:metro style app和push notification的用戶端。開發者可以将push notification用戶端內建到metro style app中去,作為app的一個單獨子產品。在下面的例子中,筆者就使用了這種方式。
包含"Cloud Service"的綠色框代表你自己的雲伺服器,作用是:負責和WNS的加密驗證和發送更新消息。搭建這個伺服器将是我們接下來工作的重點。
而包含"WNS"字樣的藍色框代表微軟的Push Notification伺服器,它将把從Cloud Service接受到的更新消息推送給你的App用戶端。