直播平台建设过程中不可或缺的推送功能
要想运营好一个直播平台,需要各方各面的工作和技术相结合完成,而消息推送就是直播app中十分重要的一个部分。App内的消息推送不仅能够给用户提供通知信息,提高用户活跃度,还能够起到召回一部分老用户的作用。那么在直播平台建设的过程中,关于第三方推送也就是我们所说的消息推送功能又该如何实现呢?
1.怎样接入三方推送?
推送功能就是一种服务器主动push消息到用户设备端的行为,因此依赖于设备端和服务器之间的长连接,流程可以分为以下几点:
设备与推送服务器建立长连接。
设备根据某些规则生成或从推送服务器获取一个devicetoken,推送服务器就可以根据devicetoken定位到具体的设备。
设备上报devicetoken到应用服务器,这一步由应用自己完成。
应用服务器会根据需要调用的推送服务端接口发起推送。
推送服务器收到推送请求后,根据请求中的devicetoken定位到具体的设备,然后下发推送通知。
设备收到推送消息,然后进行通知弹窗或其他行为。
2.ios端
苹果的官方有专门的苹果推送通知服务,简称APNS,有很高的推送送达率。最早的APNS提供基于TCP协议的接口,但是这一接口的使用方式较为复杂,如果不注意就容易导致推送失败。后来苹果又提供了一套新的基于HTTP2协议的推送接口,这一接口可以追踪到每个推送请求是被拒绝还是成功,所以应用的也比较多。
3.Android端
Google最早提供了云推送服务,简称为GCM,后来又推出了新的FCM推送来代替之前的GCM,由于国内的环境并不适用因此各个手机厂商相继推出了各自的推送服务。推送的原理都是相似的,不过是依赖于设备和推送服务器的长连接,但是厂商推送的优势在于这样的长连接可以和自己的手机系统绑定到一起,不同应用可以共享同一条长连接,既节省了流量的耗费,还免去担心应用内长连接断连导致的消息推送失败。与ios端不同的是,Android的推送服务器的接口都是HTTPS接口。
4.IM场景下推送
在IM场景下,应用服务器有属于自己的长连接服务,第三方推送服务可以利用三方厂商推送的系统级长连接来提高消息推送的送达率。
(1)对于ios端来说,应用没办法常驻后台,所以就需要在切换前后台的过程中通过IM长连接发送一个标记位,服务器就会在设备离线或者处于后台的情况下触发APNS推送,减少设备在前台情况下APNS推送的流量消耗。
(2)对于Android端来说,服务器会在设备处于离线的情况下触发第三方推送,当设备处于后台时会在收到消息之后主动弹窗以便提醒用户有新消息。
以上内容就是在直播平台建设的过程中,推送功能的实现方法及相关内容。推送功能虽然没有直播app内其他的主要功能那么重要,但却是每一个app内不可缺少的功能之一。而直播平台的运营方如果能够好好利用推送功能,增强用户黏性和留存率也是非常容易的。
本文声明原创,转载请注明出处。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
阿里云栖开发者沙龙(时序数据库技术专场)火热来袭!
点击报名 云栖开发者沙龙介绍: 阿里云栖开发者沙龙是“云栖社区”主办的线下技术沙龙品牌,希望通过技术干货分享来打通线上线下专家和开发者的连接。沙龙每期将定位不同的技术方向,逐步覆盖 云计算,大数据,前端,PHP,Java ,android,AI,运维,测试 等技术领域,并会穿插一些特别专场(开源专场,女性开发者专场,开发者成长专场等)。我们希望它将是一个开发者的聚集地,每一期都是一个开发者的大Party! 本期沙龙介绍: 本期沙龙是时序数据库技术专场,邀请了阿里巴巴、滴滴、饿了么、二维火多位业内数据库技术专家来分享交流技术经验,畅谈【开辟大数据新赛道 教你玩转海量时序数据】。欢迎大家踊跃报名参加!*主办:阿里云智能——数据库产品事业部;云栖社区*联合主办:DataFun社区;清华经管创业者加速器*协办:活动行;掘金;开源中国;51CTO;IT大咖说;SegmentFault;示说网 演讲嘉宾: 议题介绍: 时序数据库技术和架构演进 本主题主要聚焦时间序列数据库的前世今生,通过带领大家解读时间序列数据库的由来、发展、现状、未来,以及和其他数据库的对比和优势;此外还会重点比较目前时间序列数...
- 下一篇
FRIDA 实用手册
FRIDA 实用手册 本文目的是作为工具类文章,收集整理了一些 FRIDA 的使用技巧和用例,方便同学们在开发使用过程中开袋即食。 frida 的基础教程可以直接参看官网说明。 Python 部分 JS 中文支持 使用 codecs.open(scriptpath, "r", "utf-8") 打开文件读取 js 即可。 获取指定 UID 设备 device = frida.get_device_manager().get_device("094fdb0a0b0df7f8") 获取远程设备 mgr = frida.get_device_manager() device = mgr.add_remote_device("30.137.25.128:13355") 启动调试进程 pid = device.spawn([packename]) process
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Mario游戏-低调大师作品
- CentOS6,CentOS7官方镜像安装Oracle11G
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS8编译安装MySQL8.0.19
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7