我们是uniapp开发的app,项目中的系统消息推送使用的是GoEasy Websocket 实时推送,上线一段时间后,客户反馈说,当app没有在前台运行时也需要想办法通知用户一些重要的系统通知。那么此时通知栏推送就需要集成了。
集成通知栏推送很麻烦,国内一些公司做了一些插件来帮我们打通app跟厂商之间的api的调用,这确实也大大减少了开发者的工作量,但是在集成厂商通道的过程中还是遇到了一些问题, 我这里记录一下,也方便之后为其他app项目集成厂商通道时方便排错。
为什么选择GoEasy原生插件来实现通知栏推送 而不是unipush?
- 使用GoEasy原生插件来推送通知栏提醒只会在需要推送通知栏的时候推送,不会滥推给客户带来骚扰。
app前台运行时我们使用的是 GoEasy Websocket, 所以 GoEasy知道客户端的连接情况,根据GoEasy websocket的连接情况来推送该推送的通知栏提醒。 如果用unipush,这个是否在线的判断,就需要我自己来做,而且我也很难判断,又不可能每条都推送通知栏提醒。 - GoEasy通知推送为付费服务,当通知栏推送不工作时,有专人协助我排查问题,但是使用unipush,虽然免费,但是收不到通知栏推送消息时,几乎只能靠自己 和百度来解决问题,调试成本高。
通知栏推送的分类和基本工作方式
通知栏推送分两种:
- 本地通知
- 离线通知
本地通知,指app在后台运行,且goeasy websocket连接未断开时,处理的通知栏推送,此时通知栏推送是goeasy sdk完成的,无上架要求。
离线通知, 指goeasy连接断开或者app进程被杀后,需要通过厂商推送来实现的通知栏提醒。什么意思呢? 就是这种情况下,只有通过各个手机厂商自己的推送服务平台向手机推送通知栏推送。目前goeasy支持以下厂商:
- APNs (iOS苹果)
- 小米 (需要上架才能推送)
- 华为
- vivo (需要上架才能推送)
- oppo
- 魅族
- FCM (这个只适用海外用户通过google服务来进行通知栏推送,国内的项目用不上,因为google服务被墙了)

最低0.47元/天 解锁文章
1168

被折叠的 条评论
为什么被折叠?



