浏览 SDKs · iOS
平台
SDKsiOS

获取黑名单列表

获取当前用户的黑名单。

复制

OpenIMSDK 黑名单记录当前用户主动拉黑的用户。调用获取黑名单列表接口可获取完整列表,每条记录都是 OIMBlackInfo 对象。这些数据可用于构建黑名单设置页、展示资料卡中的关系状态,以及限制聊天入口。

黑名单与群组管理是两类独立能力。禁言、移除群成员或调整群角色时,应使用群成员相关 API;该查询也不代表服务端的平台账号封禁状态。

获取黑名单

完成 SDK 初始化并登录后调用该方法。成功回调返回空数组表示当前用户的黑名单中暂无数据。

[[OIMManager manager] getBlackListWithOnSuccess:^(NSArray<OIMBlackInfo *> *items) {
    [blacklistStore replaceItems:items];
} onFailure:^(NSInteger code, NSString *message) {
    NSLog(@"getBlackList failed: %ld %@", (long)code, message);
}];

资料卡、会话操作菜单和联系人列表通常只需判断某个 userID 是否在黑名单中。建议用 userID 建立集合,昵称和头像等字段仅用于展示。

返回结果

成功回调 onSuccess 返回完整的 NSArray<OIMBlackInfo *> * 数组:

属性类型说明
userIDNSString * _Nullable被当前用户拉黑的目标用户 ID,也是列表合并标识。
nicknameNSString * _Nullable目标用户昵称,仅用于展示。
faceURLNSString * _Nullable目标用户头像地址。
createTimeNSInteger黑名单关系创建时间。
addSourceNSInteger黑名单关系的添加来源。
operatorUserIDNSString * _Nullable执行拉黑操作的用户 ID。
attachedInfoNSString * _NullableSDK 保留的附加信息;只在业务已有约定时解析。
exNSString * _Nullable扩展字段;只解析业务已经约定的内容。

如果黑名单页还要展示好友备注或其他公开资料,应按 userID 合并数据,并明确区分 OIMBlackInfo、OIMFriendInfo 和 OIMPublicUserInfo 的来源。

该查询仅读取当前快照数据,不会触发黑名单新增或删除 Delegate。黑名单的写操作与事件监听分别见拉黑用户和取消拉黑用户。