uni-push消息推送配置和实战
Uni-app消息推送
一、介绍
uni-app
提供了 uni push 服务,这是一个包括客户端和服务器的统一服务,整合了苹果APNs、华为、小米、OPPO、VIVO、魅族、谷歌FCM等多家厂商的系统推送和个推的独立推送,不管客户端还是服务器,一套代码多端推送。
开发者可以在uniPush中只接入个推,不配置其他厂商服务,但这将导致很多Android手机上App离线后无法推送消息。因为现在的国产rom节电管理策略严格,不使用原厂的push基本难以离线送达消息。 若想提供消息推送成功率,只有使用uniPush,并向各rom厂商申请开通推送服务(免费)。
注意事项:
- 注意使用UniPush推送服务必须重新向DCloud申请开通,不能使用个推的账户。
- 客户端调用的js API:https://www.html5plus.org/doc/zh_cn/push.html
- 服务器调用接口发送push消息:文档仍然是个推的服务器文档http://docs.getui.com/。如果在uniCloud中使用push,还可以使用三方封装好的插件,更简单:https://ext.dcloud.net.cn/plugin?id=1680
- web自助发送界面:在DCloud的开发者后台:https://dev.dcloud.net.cn/
二、整体架构
三、消息类型
通常推送消息分以下两种类型:
-
通知栏消息(推送通知)
UniPush推送服务定义好的推送样式、后续动作的推送方式,客户端接收到后显示在系统通知栏,用户点击通知栏消息启动APP(激活到前台)。 -
透传消息
即自定义消息,UniPush推送服务只负责消息传递,不做任何处理,客户端在接收到透传消息后需要自己去处理消息的展示方式或后续动作。
UniPush推送服务对透传消息的数据符合以下格式时做了特殊处理,会将如下格式的透传消息,直接在通知栏中展示通知。注意:1、只适用于安卓,ios仍需要开发者手动在receive透传回调中创建通知;2、下列格式的透传消息,消息到达时不会进入receive回调,只有点击消息激活APP触发"click"事件。
{
"title": "xxx","content": "xxx",<