背景说明
2024年10月25日OPPO PUSH新规将消息分类为通讯与服务、内容与营销两个大类别,详见:OPUSH消息分类细则。
OPPO旧规将消息分为私信消息和公信消息两类。私信通道推送量和接收量均无限制。详见:OPPO消息分类说明。
EMAS参数说明
OpenAPI高级接口 中的AndroidNotificationChannel参数有两个含义:
App在走阿里云自有通道时,AndroidNotificationChannel代表安卓8.0的通知通道。
同时,这个参数在FCM、华为上代表自定义渠道,指定消息要展示在哪个通知渠道上。
App离线时走OPPO厂商通道,AndroidNotificationChannel参数代表您申请的OPPO私信通道。
OpenAPI高级接口 中的AndroidMessageOppoCategory参数:
通讯与服务:
IM:即时聊天、音频、视频通话。
ACCOUNT:个人账号与资产变化。
DEVICE_REMINDER:个人设备提醒。
ORDER:个人订单/物流状态变化。
TODO:个人日程/待办。
SUBSCRIPTION:个人订阅。
内容与营销:
NEWS:新闻资讯。
CONTENT:内容推荐。
MARKETING:平台活动。
SOCIAL:社交动态。
详细请参考OPUSH 消息分类细则。
OpenAPI高级接口 中的AndroidMessageOppoNotifyLevel参数:
OPPO 通道通知栏消息提醒等级。可取值为:
1:通知栏。
2:通知栏+锁屏。
16:通知栏+锁屏+横幅+震动+铃声(需申请)。
说明
使用 AndroidMessageOppoNotifyLevel 参数时,必须同时传 AndroidMessageOppoCategory 参数。
OPPO私信通道申请
请先在app代码侧创建通道并得到通道ID,参考文档:安卓8.0通知通道。下例为申请一个ID为"vibration_sound"的通知通道。
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); // 通道id。 String channelId = "vibration_sound"; // 这个id值需要给后端开发和运维人员,推送的时候对应 AndroidNotificationChannel 参数。 // 用户可以看到的通知渠道的名字。 CharSequence name = "我的测试通道"; // 用户可以看到的通知渠道的描述。 String description = "我的测试通道"; int importance = NotificationManager.IMPORTANCE_HIGH; NotificationChannel mChannel = new NotificationChannel(channelId, name, importance); // 配置通知渠道的属性。 mChannel.setDescription(description); // 设置通知出现时的闪灯(如果Android设备支持的话)。 mChannel.enableLights(true); mChannel.setLightColor(Color.RED); // 设置通知出现时的震动(如果Android设备支持的话)。 mChannel.enableVibration(true); // 自定义铃声 mChannel.setSound(Uri.parse("android.resource://" + this.getPackageName() + "/" + R.raw.push_hongbao), Notification.AUDIO_ATTRIBUTES_DEFAULT); mChannel.setVibrationPattern(new long[]{100, 200, 300, 400, 500, 400, 300, 200, 400}); // 最后在notificationmanager中创建该通知渠道。 mNotificationManager.createNotificationChannel(mChannel); }
将创建了该通道的app上线发版。
给OPPO发邮件申请设置该通道为私信通道。申请方式:在OPPO消息分类说明文档中搜索“申请私信通道权限”。
在 OPPO 推送平台上登记该通道,并将通道对应属性设置为“私信”。
私信通道在客户端创建发版、登记完毕且邮件申请私信权益审核通过后私信通道权限生效,OPPO Push将在7个工作日内通过邮件答复私信模板审核结果。
OPPO新消息分类能力接入
需要您在推送平台自助开启新消息分类能力,进入到消息发送平台后点击配置管理→通道配置,点击页面中新 通道权限开关。
开启后您推送时需要配置AndroidMessageOppoCategory,AndroidMessageOppoNotifyLevel。
新消息分类接入后消息发送流程图
注意
上边创建通道的代码示例中有一些特性设置,比如设置震动,设置声音等。这些设置是只针对安卓8.0通知通道生效的,OPPO离线通道的这些特性需要其他方式设置。
新消息分类能力当前支持系统版本OS13及以上,后续会逐步向OS12及以下覆盖。使用新消息分类能力时,建议推送时同时填写AndroidMessageOppoCategory和AndroidNotificationChannel,来兼顾低版本用户的触达。
开启新消息分类能力后,通讯与服务类消息默认提醒方式为<通知栏、锁屏>;您可以根据规则和需求申请<通知栏、锁屏、横幅、铃声、震动>的强提醒方式,强提醒方式会对用户造成一定程度打扰,请谨慎申请及使用。强提醒当前仅开放给应用二级分类中属于聊天交友、电话短信、办公类的应用申请,且申请消息类型仅限“IM类消息”,其他消息类型不予通过。同时申请时也需要提供相关模板和内容截图用于审核,最终以平台审核结果为准。
接入新消息分类后,默认遵循新消息分类形式进行消息推送,请您评估确认后再在开放平台打开新消息分类能力。为兼顾低版本用户,如果您已经接入过opush,推送通知时仍然可选择自建的通道,但仅针对不支持新消息分类的设备走自建的通道。
适用于
移动推送
移动推送服务端开发和运维