个推消息推送消息分类
一、需求背景
1.1 场景描述
在日常的消息推送中,app总有各种各样的需求,需要灵活使用消息的两种类型,来满足自己业务的需要。个推支持使用透传和通知两种类型进行推送,满足您的多样需求。
透传,即只发送数据给客户端,个推并不做任何处理,客户端可以自己解析字符串进行业务逻辑的实现,比如语音播报、或者创建自定义通知等。
通知,即为经sdk自动处理后,在通知栏以通知形式展示。一般的推送都可以使用该形式。
1.2 名词解释
名词 | 解释 |
---|---|
透传 | 即自定义消息,消息体格式客户可以自己定义,如纯文本、json串等。透传消息个推只传递数据,不做任何处理,客户端接收到透传消息后需要自己去做后续动作处理,如通知栏展示、弹框等。 |
通知 | 指定通知标题和内容后,由个推SDK自动处理后、在系统通知栏中以通知栏消息的形式展示,同时响铃或震动提醒用户(响铃和震动受手机系统的设置状态影响)。 |
1.3 各功能支持情况
功能 | 支持情况 |
---|---|
透传 | 个推通道支持,客户端在线才能收到 |
通知 | 个推通道/安卓厂商/IOS都支持(苹果不支持个推通道的通知) |
二、功能实现
调用api时,根据业务需要设置不同的消息类型即可。
2.1 透传代码示例
调用rest v2 api 设置个推通道:
{
"push_message": {
"transmission": "自定义消息内容"
}
}
对于IOS通道的消息:
{
"ios":{
"aps":{
"content-avaliable":"1"
},
"payload":"自定义消息内容"
}
}
对于苹果通道的透传 即静默通知需要注意:
- 静默通知主要用于更新和同步数据,用户对其无感知,因此静默通知一般
不设置通知内容、声音和角标
- 静默通知唤醒后台App,最多有30秒的时间处理系统回调
- 静默推送的优先级低,系统不能保证推送必达,大量的静默推送通知可能被系统将限制。苹果官方建议一个小时不超过2-3条静默推送
- 不要利用静默通知对App进行保活,APNs若检测到较高频率的静默通知发送请求,可能会终止其发送(具体策略苹果未公开)
- 具体可以参考相关的苹果官方文档
2.2 通知代码示例:
调用 服务端 RestAPI V2 设置个推通道:
{
"push_message":{
"notification":{
"title":"标题",
"body":"内容",
"click_type":"startapp"
}
}
}
对于 Android 厂商通道:
{
"android":{
"ups":{
"notification":{
"title":"标题",
"body":"内容",
"click_type":"startapp"
}
}
}
}
对于 iOS 通道:
{
"ios":{
"aps":{
"alert":{
"title":"标题",
"body":"内容"
}
},
"payload":"自定义消息内容"
}
}
编辑:yimen,如若转载,请注明出处:https://www.yimenapp.com/kb-yimen/15466/
部分内容来自网络投稿,如有侵权联系立删