Windows推送通知服务
开发者 | 微软 |
---|---|
目标平台 | Windows Phone 8.1、Windows 8、Windows 8.1、Windows 10、Windows 10 移动设备版 |
编程语言 | C# |
开发状态 | 运作中 |
许可协议 | 封闭源代码 |
Windows推送通知服务(英语:Windows Push Notification Service),通常称之为“Windows通知服务”(英语:Windows Notification Service,简称“WNS”)是一款由微软针对所有执行Microsoft Windows平台的设备而开发的通知服务。该服务允许开发者发送推送数据(push data,包括快显通知及磁贴通知)至采用该服务的Windows及通用Windows平台应用程序。[1]该服务取代原有的微软通知推送服务,最初于Windows 8上支持,及后因Windows Phone 8.1推出而扩展至该平台。[2]
技术详情
设计与兼容性
Windows推送通知服务(WNS)在设计上用以取代微软推送通知服务(MPNS),而后者只原生支持Windows Phone 8操作系统。开发者仍能透过安装在较新版本的Windows Mobile(即Windows Phone 8或Windows Phone 8.1)上的应用程序使用MPNS,但前提是有关Windows应用程序已获注册使用MPNS,并已转换为Microsoft Silverlight应用程序,且就面向新平台而作出修改。[3]
2015年,微软宣布将该服务扩展,以善用通用Windows平台架构,意味着开发者能透过通用API调用(universal API call)及POST请求(POST request),将推送数据发送至Windows 10、Windows 10 移动设备版、Xbox及其他已支持的平台。[4]
在2015年Build大会演讲上,微软宣布通用Windows平台之桥接(bridge),容许Android及iOS软件引入至Windows 10 移动设备版,并于Windows Store上发布。[5]2015年8月,有指微软Android桥接工具组(Microsoft Android bridge toolset)的一个版本(连同其使用帮助)被泄露,并可于网络上获得。[6]有关工具组要求开发者注册及使用WNS以发送通知至已引入之应用程序,且无法使用Google云消息传递。后来微软因有意继续支持iOS应用程序的引入工作,而终止Android桥接项目。[7]
在2016年Build大会演讲上,微软宣布就该服务及Windows 10操作系统作出一项更新,容许将Android及iOS设备所接收的推送通知转发至Windows 10,并可于后者查看及删除相关通知。[8]
开发架构
Windows推送通知服务的架构与其前代相似,当中包含服务器及一种用以为所有注册使用该服务的设备进行生成、维护、存储与验证独有标识符(称之为“通道URI标识符”)的接口。[2]当设备注册透过WNS接收数据与通知信息时,设备会发送设备注册请求(device registration request)至WNS网络。WNS网络会告知收悉相关请求,并以设备独有的通道URI标识符作回复。[9]一般而言,设备会发送其标识符至开发者的服务器,以作存储标识符及发送通知之用。[1]当应用程序开发者打算将通知或其他WNS数据发送至设备时,设备会发送POST请求至WNS网络,[10]WNS网络便会告知收悉及验证有关请求。若验证成功,则会将欲发送之数据加入队列,然后利用通道URI标识符,将数据从WNS网络发送至设备上。
参考资料
- ^ 1.0 1.1 Windows 8 push notifications. 2012-06-03 [2016-05-28]. (原始内容存档于2016-10-12) (美国英语).
- ^ 2.0 2.1 Windows Push Notification Services (WNS) overview (Windows Runtime apps). Microsoft. [2015-11-29]. (原始内容存档于2017-11-15) (美国英语).
- ^ Choosing MPNS or WNS for a Windows Phone Silverlight 8.1 app. Microsoft. [2015-11-04]. (原始内容存档于2016-03-04) (美国英语).
- ^ Gallo, Kevin. A first look at the Windows 10 universal app platform. Microsoft. 2015-03-02 [2015-11-29]. (原始内容存档于2016-12-30) (美国英语).
- ^ Hachman, Mark. Microsoft releases iOS-to-Windows app maker Windows Bridge to open source. PC World. IDG. 2015-08-06 [2015-10-09]. (原始内容存档于2017-07-04) (美国英语).
- ^ Saran, Cliff. Android for Windows Mobile tools leaked on web. Computer Weekly. 2015-08-18 [2016-05-28]. (原始内容存档于2022-03-11) (英国英语).
- ^ Jo Foley, Mary. Microsoft: Our Android Windows 10 bridge is dead, but iOS, Win32 ones moving ahead. ZDNet. 2016-02-25 [2016-02-26]. (原始内容存档于2021-10-26) (美国英语).
- ^ Ligas, Nicola. Windows 10 supporterà le notifiche da Android (ah sì, anche da Windows 10 Mobile). SmartWorld. 2016-04-01 [2021-10-13]. (原始内容存档于2022-03-10) (意大利语).
- ^ Windows Push Notification Services (WNS) overview. Microsoft. 2016-05-04 [2016-05-28]. (原始内容存档于2016-11-16) (美国英语).
- ^ Snoei, Ton. Windows Phone 8.1 Universal App Push Notifications (WNS) - Part 1. Snoei.net. 2015-07-10 [2016-05-28]. (原始内容存档于2016-05-22) (美国英语).