初步认识iPhone Push Notification 是本文要介绍的内容,感谢@lawrencelry邀请我参加CocoaHeads的活动,有幸碰到iCHM和Buddyfeed的作者@RobinLu。我们三个人讨论了一下苹果的Push,内容总结于下文。可以参考 解析iPhone Push Notification 消息推送 图文详细介绍来学习。
技术:表情痛苦算站
首先,推送的本质是一个服务。所以如果不考虑手机厂商和运营商之间的利益争夺,由运营商实现Push最为理想。这个世界上最好的推送服务,由黑莓和运营商合作提供,不是偶然。
而苹果和Nokia等厂商则决心走另外一条路:绕过运营商。
一个“绕”字,表现出这种方案的尴尬之处。不过,技术的发展和移动网络的普及,让这个目标越来越现实。Push Notification的幕后一文,分析了苹果的Push方案。但那个解释并不完整。他只叙述了从苹果到用户这一段。@RobinLu作为开发者,为我们补完了Push拼图中的另外一块:从开发者到苹果。
原来,除了苹果的Push Server以外,开发者必须自己维护另外一个Web Server,用来收集自己程序产生的推送,并且把他发给苹果的Push Server。
简要的说明如下图。点击放大。如图,单击放大
假设,BuddyFeed要支持Push的话。。。
一个BuddyFeed用户发送一个评论,首先在FriendFeed.com提交更新。之后,开发者维护的WebServer会从iPhone的BuddyFeed客户端(或者从FriendFeed.com),得到这个更新的通知。
开发者接收这个通知的服务器,上图中称作App Push Web Server。处理这个通知,变为苹果 Push Server可接受的标准形式,发送给苹果。苹果的Push Server再用Push Notification的幕后一文叙述的方式,把这个消息推送给用户。
商业:腰身柔软易推倒
技术上还算完整?但是结合商业考量,就不是那么妙了。
这套方案需要开发者维护一个Web Server。这是个持续的开支。而看看App Store上Push程序的售价,绝大多数都是一次性付款。
- IM+:$4.99,Boxcar:$2.99,GPush:$0.99!
考虑一下软件的销售额和他产生流量的关系吧。销售额升升降降都属正常,而Web Server所服务的用户,永远都是增长的!!!更多用户,等于更多流量,等于更多带宽,等于持续增长的昂贵的服务器租金。随着时间推移,当用户已经非常庞大的时候,软件的销售又趋于饱和,开发者会做出什么选择?
向已经购买该软件的用户再次收费,或者,干脆关掉他维护的Web Server!!!
苹果的Push的实现潦草的令人发指。新通知覆盖了旧的,你面对好几个程序上的红色数字,都不知道去哪里找。但是,这种设计上的问题更加致命。当销售下降到不能维持Web Server的月租金,那些廉价Push软件,以何为继?
出路?
苹果Push Notification的出路至少有三条:
一、是苹果提供为开发者提供App Push Server。
二、是In App Purchases,按月收费。
三、是Push广告。
目前,App Store中,已经有Push软件选择了方式二,比如Tweet Push。虽然,他更可能提供可靠而长久服务,但无论评价还是人气,都远远没有一次付费的Push软件好。
甚至机会?个人SaaS?
ERP等企业级别的应用发展出一个概念:SaaS。Software as a Service(软件即服务)。不再销售软件,而是销售一套基于Web和软件的有弹性的解决方案,并提供支持。为此,收取月/年租。SaaS应用的这种收费方式,已经被企业广泛接受。
本文开头说过,Push即服务。iPhone上Push的实现,其实就是这种企业级概念向个人下放的结果。其实今天的个人用户中,也有大量在付费购买服务。传统网络上,有Flickr Pro的账户。移动网络上,日本大量的用户缴350日元/月得到MMS的同时享受Push Mail。黑莓BIS的用户也不少。
为iPhone用户提供高质量的Push服务,并且按月收费,也许会成为将来市场的常态。
但是苹果Push技术说明上的语焉不详,让普通用户不容易接受月租方式。Push实现的潦草,让Push本来应该体现的价值打了折扣。App Store中廉价风和价格战,更让坚持月租方式的开发者难以出头。
以上种种,都在损害这个机会。
智能手机和其上的应用市场是全新的,高速成长的领域。从iPhone到App Store,苹果难得的在设计创新的同时,实现也保持了非常高的水准。但是不得不说,Push的设计和实现,不配这个评价。
但是,相信无论苹果还是开发者,都在寻找更好的办法。苹果对Push的改进不会停止。而App Store的模式,最终应能让提供完善方案的,负责任的开发者,脱颖而出。
小结:初步认识iPhone Push Notification 的内容介绍完了,希望本文对你有所帮助!