有奖捉虫:行业应用 & 管理与支持文档专题 HOT

简介

?
目前,厂商逐步对 App 开发者的本地通知根据分类进行限额限频,也以此保证终端用户不被过度骚扰,不同的消息分类主要通过通知 Category 进行区分。移动推送结合厂商的要求,对于本地通知和自建通道下发通知增加了通知分类和 importance 的支持。
注意:
从2023年9月15日开始,华为推送服务将对本地通知进行灰度管控,主要包括对应用发送本地通知进行分类管理,以及对资讯营销消息统一进行频次管控,有需求可以参见《华为本地通知配置指引》,未接入消息自分类的应用,消息通知类型将会默认归为资讯营销类消息,资讯营销消息每日推送数量上限要求请参见《推送数量管理细则》。
说明:
华为本地通知包含移动推送本地通知移动推送自建通道下发的通知。

通知消息的分类

移动推送的通知主要来自三种:
通知来源
备注
本地通知
通过移动推送 SDK 接口直接弹出的通知
移动推送自建通道下发通知
通过移动推送自建通道下发的推送通知
移动推送下发给厂商通道展示的通知
移动推送下发给厂商通道展示出来的通知, 厂商通道消息分类参见:《厂商消息分类功能使用说明

本地通知支持分类

移动推送 Android SDK 1.4.3.1 版本在增加本地通知时,可以指定通知 category 和通知 channel importance。
其中 Category: 具体取值可参见 Android Notification 中相关 Category 的定义,具体分类参见《Android 官方通知分类定义》。
代码示例:
?
XGLocalMessage?localMessage?= new XGLocalMessage();
//设置通知类型:1 通知,2 透传消息
localMessage.setType(1);
localMessage.setTitle("一条本地通知");
localMessage.setContent("我是一条本地通知");
localMessage.setDate("20230729");
localMessage.setHour("19");
localMessage.setMin("31");
localMessage.setAction_type(4);
localMessage.setChannelId("local_123");
//设置本地通知分类
localMessage.setNotificationCategory(Notification.CATEGORY_CALL);
//设置通知Channel importance
localMessage.setNotificationImportance(NotificationManager.IMPORTANCE_HIGH);
localMessage.setActivity("com.tencent.android.duoduo.MainActivity");
localMessage.setIntent("tpns://com.tpns.push/notify_detail?param1=key");
HashMap<String, Object>?custom?= new HashMap<String, Object>();
custom.put("key", "v1");
custom.put("key2", "v2");
localMessage.setCustomContent(custom);
XGPushManager.addLocalNotification(context,?localMessage);

移动推送自建通道下发通知支持分类

对于移动推送自建通道下发的推送通知,在 Rest API 请求参数 Android 结构体中设置 n_category 参数,可实现移动推送通道消息分类下发,详情请参见 PushAPI 参数说明。
注意:
移动推送 Android SDK 1.4.3.1及以上开始支持 tpns 自建通道通知分类。
n_category 字段的取值及参考使用场景说明:
参考类型
Category取值
参考场景说明
即时聊天
CATEGORY_MESSAGE
用户间点对点聊天消息(或私信)、群聊天消息。
音频、视频通话
CATEGORY_CALL
语音通话邀请、视频通话邀请、来电提醒等。
出行
CATEGORY_NAVIGATION
用户出行产生的通知提醒,推送对象为消费者。
行程提醒。
班车/航班变动提醒。
酒店入住前提醒。
公交到站提醒。
工作事项提醒
CATEGORY_REMINDER
用户下一步需要做某件事项的提醒、待处理的业务流程。
工作提醒:会议提醒、待办提醒、日程安排、教学任务/课程提醒等。
待处理业务流程,推送对象为服务提供方:审核进度提醒、认证状态流程提醒、工单处理、卖家收到订单提醒、卖家收到售后提醒、催促卖家发货提醒、司机接单提醒。
商家运营:库存不足、售罄提醒、商品下架通知、限制提现、客诉警告、店铺限制、商品黑名单、交易违规、涉假/涉欺诈发货通知。
财务
CATEGORY_SERVICE
金额变化的交易提示,仅限金融银行类、支付类 App 使用。
收付款、银行到账&扣款、交易提醒、催缴&退款信息、充值、待支付账单、贷款受理进度、还款/逾期提醒、资金冻结提醒、资金限制提醒、缴纳保证金提醒。
邮件
CATEGORY_EMAIL
新收到的邮件,例如邮箱类 App、办公软件 App 使用。
闹钟/计时器
CATEGORY_ALARM
闹钟提醒、计时器消息。
秒表
CATEGORY_STOPWATCH
秒表计时提醒。
进度
CATEGORY_PROGRESS
后台运行中的任务处理进展,如文件下载进度、传输进度等。
位置共享
CATEGORY_LOCATION_SHARING
临时共享位置信息。
内容推荐
CATEGORY_RECOMMENDATION
非用户主动订阅,应用向用户推送的内容。
包括点评、书籍、广告、视频、音频、节目、课程、直播、社区话题、游戏宣传等。
新闻
及时地报道新近发生的、有价值的事实。
包括新闻、经济新闻、法律新闻、新闻、科技新闻、文教新闻、体育新闻、社会新闻等。
财经动态
股票、彩票、期货、期权、外汇类通知,包括交易信息、行业公告等。
生活资讯
天气:天气提醒、天气异常变化,包括气温、雾霾、台风、灾情、预警等。
导航:行驶路线、路况规划、路线中的交通状况(拥堵提醒)、位置使用、调用地图类应用进行定位等相关的通知。
各垂直行业相关信息。
社交动态
CATEGORY_SOCIAL
用户之间的社交互动提醒,如:好友动态、新增粉丝、添加好友、被赞、被@、被收藏、评论、留言、关注、回复、转发等。
用户推荐:附近的人、大 V、主播、异性、可能认识的人等。
调研
CATEGORY_PROMO
发送问卷以获得受访者的态度和意见,包括使用习惯、产品满意度、服务满意度等。
其他
面向广大用户发布的产品功能推荐、平台公告、应用更新升级提醒等。
产品促销
产品信息相关推广、产品优惠,例如满减、低至、促销、买一送一、返利、优惠券、代金券、送红包相关的通知。
功能推荐
推荐用户使用当前产品的某一个功能。
运营活动
非用户主动设置,由应用发起需由用户参与的运营活动、提醒消息、小游戏提醒、服务等。
代码示例:
{
"audience_type": "token",
"token_list": ["005c28bf60e29f9a***2052ce96f43019a0b7"],
"message_type": "notify",
"message": {
"title": "移动推送自建通道通知分类",
"content": "测试内容",
"android": {
"n_category":"CATEGORY_CALL",
"n_importance":3
}
}
}

移动推送下发给厂商通道展示的通知支持消息分类

目前,厂商会逐步对 App 开发者的通知消息根据分类进行限额限频,以此保证终端用户不被过度骚扰;
各厂商通道消息分类请参见《厂商消息分类功能使用说明

通知 Channel优先级 importance

在 Rest API 请求参数 Android 结构体中设置 n_importance 参数,可实现移动推送通道消息分类下发,详情请参见 PushAPI 参数说明。
参考值:
1 //对应android IMPORTANCE_MIN
2 //对应android IMPORTANCE_LOW
3 //对应android IMPORTANCE_DEFAULT
4 //对应android IMPORTANCE_HEIGHT
代码示例:
{
"audience_type": "token",
"token_list": ["005c28bf60e29f9a***2052ce96f43019a0b7"],
"message_type": "notify",
"message": {
"title": "移动推送自建通道通知Channel优先级",
"content": "测试内容",
"android": {
"n_category":"CATEGORY_CALL",
"n_importance":3
}
}
}
注意:
n_importance 仅在首次创建通知的 Channel 时生效,通过移动推送的本地通知和自建通道下发的通知创建通知 Channel 支持设置优先级;如应用本地已经创建好了对应 Channel ID的 Channel 则 n_importance 字段不生效。

适配华为本地通知分类

2023年9月15日开始,华为推送服务将对本地通知进行灰度管控,主要包括对应用发送本地通知进行分类管理,以及对资讯营销消息统一进行频次管控。本地通知的消息提醒方式取决于importance级别,应用需根据《华为本地通知分类和优先级规范》正确配置;
华为通知(云端通知和本地通知)的消息分类方式统一为消息自分类。如未申请自分类默认通知都为公信消息(有限额限频),如您希望消息分类能更精准地符合业务需要,可申请自分类权益
注意:
应用若已申请云端相关消息类型,将自动生效对应的本地通知类型,本地通知无需重复申请,但应用仍需适配开发。
未接入消息自分类的应用,消息通知类型将会默认归为资讯营销类消息,资讯营销消息每日推送数量上限要求请参见《推送数量管理细则》。
申请华为自分类权益成功后,在集成移动推送 Android SDK 版本为1.4.3.1及以上,可对移动推送通道下发的通知和移动推送 Android SDK 触发的本地通知配置申请的本地通知分类,即可完成适配。
1. 移动推送通知下发的通知可以参见:《配置移动推送通道下发通知分类
示例:
在移动推送 Rest API 请求参数 Android 结构体中设置 n_category 和 n_importance参 数,即可对通过移动推送自建通道的通知适配华为本地通知分类,详情请参见?PushAPI?参数说明。
注意:
n_importance 仅在首次创建通知的 Channel 时生效,通过移动推送的本地通知和自建通道下发的通知创建通知 Channel 支持设置优先级;如应用本地已经创建好了对应 Channel ID 的 Channel 则 n_importance 字段不生效。
?
{
"audience_type": "token",
"token_list": ["005c28bf60e29f9a***2052ce96f43019a0b7"],
"message_type": "notify",
"message": {
"title": "华为本地通知消息",
"content": "自分类推送。",
"android": {
"n_category":"CATEGORY_PROMO",
"n_importance":1
}
}
}
2. 移动推送本地通知触发的通知可以参见:《配置移动推送 SDK 触发本地通知分类
代码示例:
?
XGLocalMessage?localMessage?= new XGLocalMessage();
//设置通知类型:1 通知,2 透传消息
localMessage.setType(1);
localMessage.setTitle("一条本地通知");
localMessage.setContent("我是一条本地通知");
localMessage.setDate("20230729");
localMessage.setHour("19");
localMessage.setMin("31");
localMessage.setAction_type(4);
localMessage.setChannelId("local_123");
//设置本地通知分类
localMessage.setNotificationCategory(Notification.CATEGORY_CALL);
//设置通知Channel importance
localMessage.setNotificationImportance(NotificationManager.IMPORTANCE_HIGH);
localMessage.setActivity("com.tencent.android.duoduo.MainActivity");
localMessage.setIntent("tpns://com.tpns.push/notify_detail?param1=key");
HashMap<String, Object>?custom?= new HashMap<String, Object>();
custom.put("key", "v1");
custom.put("key2", "v2");
localMessage.setCustomContent(custom);
XGPushManager.addLocalNotification(context,?localMessage);
?


http://www.vxiaotou.com