这篇文章介绍了不同系统,推送功能的演变,从简单的文本通知到富媒体通知,再到现在灵活的自定义通知样式。来看看今天我们使用的推送是如何演变过来的。
曾经有一次,当开发人员想要连接他们的用户设备时,他们使用了后台进程或者一个轮询技术,这意味着连接到服务器的设备每隔十分钟就能检查是否有消息。 如果每个用户都有几十个应用程序在轮询,这会导致设备疯狂耗电等问题。
2003 – 黑莓推送电子邮件
如果你想在火车上阅读你的电子邮件,你需要一个黑莓。 RIM 是第一个在其电子邮件应用程序中使用推送通知的操作系统,之后扩展到可以在 Blackberry 设备之间通过推送功能来免费发短信。
苹果的首席技术官 Scott Forstall 在 iOS 3.0 中呈现了APNs。 令人兴奋的是,它允许第三方开发人员轻松免费使用这项技术。 虽然苹果不是第一个发明这项技术的公司,但他们却开启了我们今天所经历的革命。 (开发者大会视频-需科学上网)
2010 – Android Cloud to Device Messaging (C2DM)
2012 – Google Cloud Messaging (GCM)
我们今天使用的 GCM 最初是在 2010 年和 Android 2.2 同时发布的 C2DM (Android Cloud to Device Messaging) 服务。
2012 年 6 月 27 日,Google宣布推出 Google Cloud Messaging 服务,不久之后便发布文档,指导应用开发人员从 C2DM 迁移到 GCM。(维基百科)
2011 – Android 4.2 与 Rich Push 发布
ICS 以来开始对推送通知进行了功能拓展,您可以毫无限制的设计和调整 Android 推送通知。 iOS 还只是将推送通知视为用户和开发人员之间的短信平台的时候。 Android 就已经向前迈出了一大步, 让通知中心成为用户的个人“公告板”。
2013 – 通知广告
它帮助许多小型开发人员和一次性应用程序(例如 cool wallpapers)通过其应用程序获利,这让许多应用程序充满了应用程序商店,而不用操心怎么赚钱。 但问题来了,许多用户厌倦了他们一直在接收广告。
2013 年 11 月,Google 发布了他们的新政策:
应用程序及其广告不得在用户设备上添加主屏幕快捷方式,浏览器书签或作为第三方的服务或用于广告目的图标。
应用程序及其广告不得通过用户设备上的系统级通知显示广告,除非通知应用程序自身提供的功能。 (例如,通知用户交易的航空公司应用程序,或通知用户游戏内促销的游戏)【Google 云端条款】。
静音推送通知是 iOS 7 中发布的一个很棒的功能。当静默推送通知到达设备时,用户并不知道收到了通知。 但是,您的应用程式已被通知,并会获得一些时间执行某些任务比如下载新内容并将其呈现给用户。
静音远程通知可用于:
剧集内容 – 电视节目,播客
稍后阅读这些故事
支付同步
文件同步
2014 – iOS 8 发布 2kb 和操作按钮
在 iOS 8 之前,您只能发送 256 字节的消息,因此为了让用户看到整个消息,您必须将其总结为 100 个字符或更少。
iOS 8 带来了两件伟大的事情
从现在开始,您发送通知的 payload 增加到 2 k 字节 ,这是足够的。
您可以在消息中添加几个操作按钮。 如果用户将向左滑动通知,那些按钮将会出现。
(相关视频- 需科学上网)
2016 +
我无法预测未来不同的操作系统还会给我们提供什么功能。 但是,根据我个人经验来看,我相信今后推送通知会更加强大,成为一个互动工具,而不是一个公告栏,这样用户不必进入你的应用程序,就能享受某些功能并且一切都将直接从通知中心进行管理。
PS: 由于该篇文章是 2016 年的时候写的, 在 2017 年 iOS 提供了更加丰富的功能我在此补充一下。
支持富媒体的推送通知 (使用service extensions)。
可以让程序来指定推送是否展示,在 iOS10 以前推送只有应用不在前台才会展示。
支持更多的字段 title、subtitle 和 body 。
可以看到推送功能正在变得越来越强大,相信未来还会给我们带来更多的惊喜。
原文:The Push Notifications Evolution