发表于: 2019-05-17 21:41:23
1 431
今天完成的事情:
1.修改了任务
2.通过学习师兄的日报,明白了任务9应该掌握的知识
明天计划的事情:
继续 改任务
遇到的问题:
为什么有的公司本身有消息推送还要用第三方推送呢????例如小米
收获:
总结
不在乎成本的企业可以开发自己的推送,或者外加手机厂商推送等四三放推送
成本有限可以用第三方平台推送(例如友盟)
目标群体精确且使用华为 小米手机等可以选择手机厂商推送
一、学习消息推送
1.作用:
2.移动端消息通知的方式主要分为两种:pull方式和push方式。
pull方式:
pull方式即“拉方式”,这种方式中手机上的应用程序在启动时经过一定周期会定时连接应用的服务端来获得服务器需要传递给终端的消息,因为此处是终端从服务端主动获得消息,因此成为拉方式。
此方式服务端实现简单,只需要在终端连接上之后把需要发送的消息发送给终端即可,但是此方式有几个弊端:
每个应用都需要建立到自己服务器的socket连接,移动终端需要维护多个socket连接,较为耗电,不易于管理。
采用拉的方式,应用在启动的时候回从应用的服务器上拉取消息;启动之后,应用会周期性的连接服务器去检查是否有消息需要拉取,这种方式并不及时,需要等到终端主动拉取的时候服务器才能把消息传递到终端。如果应用频繁检查是否有消息需要拉取,那么耗电会增加,如果检查周期过长,那么会影响消息的及时性。
所以,采用pull方式进行通知消息的传递并不是一个很好的办法。
push方式:
采用push方式,移动终端只需要和推送服务器之间保持一个长连接即可。这样移动端用于推送的socket连接数量就与需要推送服务的应用数量无关了,只需要维持一个终端与推送放服务器之间的长连接即可,所有应用的服务端都是直接连接推送服务器并通过推送服务器来吧消息推送到终端。而终端也只与推送服务器进行连接即可获得推送消息。
推送服务器通过长连接,在消息到来的时候可以立即把消息推送到连接上来的终端上,实时性比较高。
3.ios和安卓
ios:所有的苹果应用都只能用苹果推送(push)
安卓:分为第三方推送、主流推送方式和自己搭建
Ps:主流推送方式这块属于开发了,了解了一下每种方式的优缺点,就不详细写了。
第三方推送:
① 主流的第三方推送平台分类
● 手机厂商类:小米推送、华为推送
● 第三方平台类:友盟推送、极光推送、云巴(基于MQTT)
其他推送方式还有:C2DM、轮询、SMS、MQTT协议、XMPP协议等等,相当于这些推送方式,第三方推送方式的特点分别是:
● 优点:
● 缺点:
第三方推送服务方式的特点:
1.手机厂商推送
● 典型案例:
● 集成应用:
② 第三方平台类
③ BAT大厂的推送
BAT大厂其实并没有什么优势,同时谨记:不要以为用了腾讯信鸽推送,就能沾上微信的光,保证你的App永远不被杀死。例如:手机淘宝除了自家的阿里云移动推送,同时也使用了其他的第三方推送平台。
如何选择第三方平台推送服务?
根据使用场景选择消息推送平台~
通常第三方平台都支持两种推送消息类型:通知栏消息和透传消息
● 通知栏消息:该类消息在被送达用户的的设备后,直接以系统通知栏的形式展示给用户(不会继续被传递到App)
● 透传消息:该类消息在被送到用户的设备后,还会继续传递到App(由App决定如何处理和显示这个消息)
● 二者的区别在于:透传消息在整个消息传递的过程中比通知栏消息多了一步》传递到App
● 通知栏消息的优点:送达率高
● 透传消息的优点:对消息操作成都高&自定义程度高
一般为 上午9-10点、中午12-14点、下午5-6点、晚上21-22点这几个时间段。
评论