手机上的Push 以及 Notification

一、什么是Push Notification

Push 这一概念最早是出现于 PushMail 中,指的是利用推送技术,将电子邮件直接传送到移动终端。简单的说,就是系统直接将电子邮箱中刚刚收到的邮件即时发送到用户手中,不像传统移动邮件系统那样必须依赖移动终端定期接/收邮件或用户主动检查邮箱,所以客户终端上时刻都能够与所指定的信箱维持同步的资料。
当你有新邮件时,服务器会在第一时间将这个消息“推”给你。相比传统的定时收信,Push的好处是可以让你更快地收到邮件。比如用foxmail客户端,设置了5分钟自动收信,当一封信在一个随机的时间发出之后,需要平均等待2.5分钟才可以得到通知,而如果服务器可以Push给你,就只需等待一个网络延时。而遗憾的是,在广泛使用的pop3或imap协议中,并没有考虑到Push机制,因此Push功能需要额外的开发和协议规定。(via 百度百科
如果推而广之的说,不考虑电力以及流量的因素的话,当一个延时足够小的Pull(比如1分钟以内),对于用户的感受来说是和Push没有太多不同的,所以以下也将一并讨论,称之为广义的Push或者称之为伪Push。

二、为什么需要 Push Notification

Push Notification是iPhone OS中特有的概念,为了讨论方便,就暂时借用一下这个概念啦。 需要使用 Push ,很大的一个方面的意义在于很多人使用电子邮箱作为个人信息包括各种网上社会化服务的信息总管;使用Push的另一个原因,就是希望将所有的信息都集中到电子邮箱中进行集中化处理。(如果可以不集中到电子邮箱也能及时得到通知当然是不集中到邮箱的好)
可以通过邮件订阅RSS/Twitter Reply/收发 Twitter等,也能将IM信息第一时间转发到邮箱(BeeJiveIM 提供),推荐几个服务。

RSS推到邮箱 http://www.feedmyinbox.com/
Twitter Reply推到邮箱 http://www.twply.com/ 或者 http://replynotifier.com/

三、各个系统实现 Push 的方式

  1. BlackBerry OS
    因为传统意义上的 PushMail 就生于斯嘛,所以从某种程度上来说,黑莓的 Push 是最为根正苗红的。 黑莓的 Push 是基于运营商以及BES/BIS的,所以在流量、电力以及速度方面都有相当的优势,只是目前在中国的定价还是相当高昂非普通用户可以接受(移动基本BES套餐50M流量是398元)
  2. iPhone OS
    后起之秀 iPhone OS 在OS3 SDK 推出之时,也提供了 Push Notification 作为 iPhone 不能提供后台多任务的一个替代,之前网上也有好几篇关于 Push Notification 的文章,我就不多分析了,流程如下图,使用TLS/SSL 保证连接的安全性。
    iPhone的Push(推送通知)功能原理浅析
    再论iPhone Push Notification:腰身柔软易推倒?
    偷窥iPhone Push Notification的幕后



  3. Android
    Android 系统内置的 GMail 是提供 Push 的,实现是通过 IMAP Idle 方式;内置的GTalk 后台服务也能及时送到最新聊天信息;以上两者皆是系统内置的,不过额外的第三方程序如果需要提供"Push",就需要在后台多添加一个进程,对于系统造成负担,毕竟手持终端还有电力、流量等桌面终端无需考虑的问题存在,所以一般除了 eMail 第三方程序Push并不是很好用吧(个人意见,轻拍)
  4. Symbian/Windows Mobile
    一般使用 Exchange(公司邮箱或者Google Sync)来Push,Nokia也有提供 Nokia Messaging 这一专有协议的需要通过Nokia 服务器的PushMail,然后还有诸如emoze/尚邮(没有使用过)这样的第三方PushMail,第三方PushMail存在的问题就是安全性不足,存在隐私泄露等问题,不过个人一般不必太过担心。
  5. Others
    可以使用Notify.me 或者inezha.com 订阅配合 IM 聊天软件进行伪"Push"。其实我觉得这种方式还是挺不错的,只是延时有两次,一次是Feed更新的延时,一次是抓取Feed之后通过IM机器人推送的延时。不过由于其普适性,以及没有太多系统要求,仍然是一种很方便的选择。 这里推荐一下

之前也有谈过 Push和Pull 的文章,有兴趣也可以看一下。

9 条评论了已经

发表评论

名字(必须)
邮箱(必须),(不会被公布)
网址(推荐)

字体为 粗体 是必填项目,邮箱地址 永远不会 被公布。

允许部分 HTML 代码:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
URLs(网站链接)必须完整有效 (比如: http://coolxll.me),所有标签都必须完整的关闭。

超出部分系统将会自动分段及换行。

请保证评论内容是与日志或 Blog 内容相关的,灌水、攻击性或不恰当的评论 可能 会被编辑或删除。