当前知识库站点已不再维护。请移步新版知识库:https://help.rongcloud.cn/

Android 各平台推送通知栏点击处理方案

Android 各平台推送通知栏点击处理,融云统一使用注册监听器的方式进行处理。
发布时间: 2019-12-26 19:58

回答:

示例代码如下:

```

RongPushClient.setPushEventListener(

                new PushEventListener() {

                    @Override

                    public boolean preNotificationMessageArrived(

                            Context context,

                            PushType pushType,

                            PushNotificationMessage notificationMessage) {

                        //透传通知时,调用。通知显示之前的回调,用户可拦截此事件进行通知自定义显示。 融云默认推送、华为数据透传方式推送(华为)(不能保证到达率,已不建议使用)、 FCM 数据方式推送会回调此方法。

                        return false; //是否拦截 push 通知

                    }


                    @Override

                    public void afterNotificationMessageArrived(

                            Context context,

                            PushType pushType,

                            PushNotificationMessage notificationMessage) {

                        //通知消息到达并显示之后的回调,之前魅族、小米会进行该回调,新版本ROM已经不支持了。

                    }


                    @Override

                    public boolean onNotificationMessageClicked(

                            Context context,

                            PushType pushType,

                            PushNotificationMessage notificationMessage) {

                        //push 通知,点击回调处理。早期融云版本是通过 PushMessageReceiver 的方式进行回调,由于系统限制及延时问题,改为 RongBridgeActivity 进行中转回调处理。最终都调用到该方法。

                        return false;

                    }


                    @Override

                    public void onThirdPartyPushState(

                            PushType pushType, String action, long resultCode) {}


                    @Override

                    public void onTokenReceived(PushType pushType, String token) {

                        //push token 获取结果后回调处理

                    }


                    @Override

                    public void onTokenReportResult(

                            PushType reportType, int code, PushType finalType, String finalToken) {

                        //push token 上报结果回调处理

                    }

                });

```