windows phone 7 为第三方开发者提供云服务的在线推送功能,他通过一个特殊的数据通道,让服务器应用给手机发送数据。
下图介绍了windows phone 7 的在线推送功能。1 手机客户端向微软的服务器请求 通知的uri,即先向微软注册推送服务(2和3)你的客户端把这个uri发送到你自己的云服务器上(4),当你的云服务器有消息要push到你的手机时,就可以通过这个uri向微软的推送服务发送消息(5),微软的推送服务就会把这条消息放到推送的队列中,向手机push消息(6)。
我们可以把推送通知理解成,一部手机就相当于我们一个用户,在淘宝注册了帐号并填写了送货地址(URI),在购买完自己需要的物品后,通知淘宝商家发货了,这时淘宝商家接收到我们给出的URI,就把货品打包,可以使用万能打包把什么东西都放进去(Raw)或者根据我们的要求要打包成礼品的样子(Tokens或者Toast 需要的XML格式 ),之后通知快递公司(
微软--》不同的是,微软是免费的帮我们快递 ) 。而当我们收到快递公司给予我们的通知后,如打电话说:“先生,你的货品己经到达,请接收”,之后我们就根据打包方式进行接收啦。参考1
推送类型包含三种:
1.Raw Notification
2.
Toast Notification
3.
Tokens (Tile) Notification
具体的可以参考用例!
这里实现一个类似微信的短信不在线提醒功能。
即:在windows phone 中向微软注册推送服务功能,将返回的uri提交给自己的服务器,让服务器管理不同手机的uri。
如果有一台手机向另外一台手机发送消息时,手机不在线,就可以通过手机对应的uri进行推送。
demo如下:
:
这里只有一个windows phone 7 的模拟器,所以实现的是自己给自己发送短信的功能。至于如何实现同时运行两个模拟器,这里有说明:
http://www.silverlightchina.net/html/zhuantixilie/winphone7/2011/0526/7913.html源代码下载源码是一些实验性的东西,还有很多的细节都没有完善,只能做参考使用。
参考文章:
1.
Windows Phone 7 不温不火学习之 原文地址:
http://www.cnblogs.com/TerryBlog/archive/2011/01/08/1930900.html
2.Push Notifications Overview for Windows Phone
http://msdn.microsoft.com/en-us/library/ff402558(v=vs.92).aspx3.
Windows Phone 7 网络编程之使用Socket(芒果更新)
http://www.cnblogs.com/linzheng/archive/2011/06/21/2086456.html
posted on 2011-07-04 22:51
漂漂 阅读(2144)
评论(0) 编辑 收藏 引用