iOS 和 Android 的后台推送原理各是什么?有什么区别

iOS 和 Android 的后台推送原理各是什么?有什么区别,第1张

iOS 和 Android 的后台推送原理各是什么?有什么区别?2013-12-11 17:42| 发布者: zouqun |原作者: 李楠|来自: 知乎摘要: iOS 的推送iOS 在系统级别有一个推送服务程序使用 5223 端口。使用这个端口的协议源于 Jabber 后来发展为 XMPP ,被用于 Gtalk 等 IM 软件中。所以, iOS 的推送,可以不严谨的理解为:苹果服务器朝手机后台挂的一个 ...iOS 的推送

iOS 在系统级别有一个推送服务程序使用 5223 端口。使用这个端口的协议源于 Jabber 后来发展为 XMPP ,被用于 Gtalk 等 IM 软件中。所以, iOS 的推送,可以不严谨的理解为:

苹果服务器朝手机后台挂的一个 IM 服务程序发送的消息。

然后,系统根据该 IM 消息识别告诉哪个 Apps 具体发生了什么事。

然后,系统分别通知这些 Apps 。应该说,苹果这种方式在技术上没有什么创新。但是,整个架构是很了不起的。 因为:

1 使用久经考验的协议,技术风险小。

2 苹果勇于承担责任:

他需要维护一个代价不小的服务器集群,而且要为服务器的 down 机负责。

选择低风险的技术方案 Bug 更少,减轻了用户的痛苦,这是构架师的功劳。

苹果承担责任,尽可能的减少了不可控的意外,保证了用户体验。

这,只能说是公司决策者的功劳。

(从侧面说明有个懂技术的 VP 是多重要。。。而 Scott 走人了。。)

他们带给用户的好处也是实实在在的。

1 安全。

只有登录过的开发者可以通过苹果的服务器推送。

2 快速,稳定,可靠。

苹果掌控推送服务器和 OS 。

3 更省电。

4 让整个系统的体验更统一和简单。

不会出现杀后台这种脑残事。(不用大量 Apps / Apps 的服务为了推送挂后台)。

也不会出现 Apps 被杀就收不到推送这种脑残事(早一点的新浪微博 Android 版仍然如此)。

5 开发容易。

当然,开发者还是要做些事情,比如维护个服务器什么的: http://www.ifanr.com/3979。但是复杂度无疑降低很多了。

Android 的推送

Apps 挂后台一直是 Android 引以为豪的特性(虽然我真的不知道是好处多还是坏处多。。)。。。大家挂后台等待推送就成为技术选择。

当然, Google 事后也提供类似苹果的推送方式了。倒也谈不上抄袭,毕竟苹果的整个技术实现也没有什么特别创新之处。

用户的电池?

Apps 的开发者不会站在系统层面考虑的。他会假设其他 Apps 没有那么“不自觉”。而 Google 不强制的结果就是:没人真正为用户的电池负责。

但是, Google 的方案也并非全是悲剧:

也因为整个技术方案非强制, Android 的 Apps 在接收到推送后的表现更为灵活。

像 Line 的 Android 版本可以在推送通知的 Popup 上直接回复, iOS 就需要越狱才能做到了。

最后的话

强制和封闭,有时候并非坏事。他意味着做出这个决定的人,要为此负责。

所以,如果说苹果的推送方案有何创新?

我以为是超越技术,不惜让公司承担更多风险和责任的解决方案。(类似的还有 BB 的专用网络, Kindle 的全球 3G )

个人相信,担负起这些“额外”的责任,是值得的。。。

想要接入一家第三方推送服务,可以考虑使用深圳极光家的推送服务,安全性和稳定性都是不错的。而且五大服务也是比较不错的,具体如下:

1、智能触达精准广告,智能送达

2、inApp场景广告,精准触达;

3、VaaS视频广告,高效转化;

4、互动广告深度互动,前置体验;

5、互动游戏赋能游戏,提升价值。

极光的五大服务,助力企业赋能;通过智能触达、应用内广告、视频流服务、互动式效果广告和H5游戏的模式,助力开发者提高用户活跃时长、增加用户粘性,提升用户价值,为开发者提供优质的广告变现服务。

而且是中国领先的开发者服务提供商,专注于为开发者提供稳定高效的消息推送、一键认证以及流量变现等服务,助力开发者的运营、增长与变现。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/777729.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-08-22
下一篇2023-08-22

发表评论

登录后才能评论

评论列表(0条)

    保存