跳转至

通知

本地通知

提示

SDK 在应用切入后台的两分钟内,收到新消息会生成一条本地通知。此时 SDK 依旧处于连接状态,所以 SDK 的代理方法依旧可以拦截此消息。

本地通知回调

设置了IMKit消息监听之后,当 App 处于后台,收到消息时弹出本地通知之前,会执行此方法。

当返回值为 NO 时,SDK 会弹出默认的本地通知提示;当返回值为 YES 时,SDK 针对此消息不再弹本地通知提示

参数 类型 说明
message RCMessage 接收到的消息
senderName NSString 消息发送者的用户名称
返回值 BOOL 是否弹出本地通知 [YES:不弹出] [NO:弹出]
- (BOOL)onRCIMCustomLocalNotification:(RCMessage *)message withSenderName:(NSString *)senderName;

注意

  1. 使用此方法需设置 receiveMessageDelegate 代理对象。
  2. 当设置了 disableMessageNotificaitonYES 时 , SDK 不会回调此方法。
  3. 如果 App 在后台想使用 SDK 默认的本地通知提醒,需要实现用户/群组/群名片信息提供者,并返回正确的用户信息或群组信息。 参考 RCIMUserInfoDataSourceRCIMGroupInfoDataSourceRCIMGroupUserInfoDataSource

代码示例:

- (BOOL)onRCIMCustomLocalNotification:(RCMessage *)message withSenderName:(NSString *)senderName {
    //群组通知不弹本地通知
    if ([message.content isKindOfClass:[RCGroupNotificationMessage class]]) {
        return YES;
    }
    if ([[message.content.class getObjectName] isEqualToString:@"RCJrmf:RpOpendMsg"]) {
    return YES;
    }
    return NO;
}

远程推送

远程推送请参考文档