浏览 SDKs · Android
SDKsAndroid

关系链概览

了解 Android SDK 中的好友、好友申请和黑名单 API。

复制

关系链记录当前用户与其他用户之间的好友关系、好友申请和黑名单。资料、账号设置和在线状态属于用户能力,见用户概览

关系链类型

Android SDK 会根据关系链场景返回不同的对象:

类型适用场景主要 API
UserInfo好友列表、指定好友资料和黑名单列表中的用户资料及关系信息getFriendListPage()getFriendsInfo()getBlacklist()
FriendInfo好友资料、备注和关系扩展字段UserInfo.getFriendInfo()searchFriends()
FriendshipInfo当前用户与目标用户的好友关系结果checkFriend()
FriendApplicationInfo收到或发出的好友申请及其处理状态getRecvFriendApplicationList()getSendFriendApplicationList()
BlacklistInfo黑名单关系信息UserInfo.getBlackInfo()getBlacklist()

UserInfo 可包含好友或黑名单关系信息;通过 getFriendInfo() 获取 FriendInfo,通过 getBlackInfo() 获取 BlacklistInfo

功能入口

下表列出了关系链相关的常见需求和对应页面:

需求推荐页面
分页获取、搜索或查询指定好友资料分页获取好友列表搜索好友查询指定好友资料
检查当前用户与目标用户的好友关系检查好友关系
更新或删除好友关系更新好友资料删除好友
发送、查询、接受或拒绝好友申请发送好友申请获取收到的好友申请获取发出的好友申请接受好友申请拒绝好友申请
查看或维护黑名单获取黑名单列表拉黑用户取消拉黑用户

状态更新

关系链状态变化需要设置好友关系监听器;具体回调说明见下方对应能力页:

OpenIMClient client = OpenIMClient.getInstance();

client.friendshipManager.setOnFriendshipListener(new OnFriendshipListener() {
    @Override
    public void onFriendApplicationAdded(FriendApplicationInfo application) {
        // 处理好友申请变化
    }

    @Override
    public void onFriendApplicationAccepted(FriendApplicationInfo application) {
        // 处理好友申请已接受
    }

    @Override
    public void onFriendApplicationRejected(FriendApplicationInfo application) {
        // 处理好友申请已拒绝
    }

    @Override
    public void onFriendApplicationDeleted(FriendApplicationInfo application) {
        // 处理好友申请删除
    }

    @Override
    public void onFriendAdded(FriendInfo friend) {
        // 处理好友关系变化
    }

    @Override
    public void onFriendInfoChanged(FriendInfo friend) {
        // 处理好友资料变化
    }

    @Override
    public void onFriendDeleted(FriendInfo friend) {
        // 处理好友关系删除
    }

    @Override
    public void onBlacklistAdded(BlacklistInfo user) {
        // 处理新增黑名单记录
    }

    @Override
    public void onBlacklistDeleted(BlacklistInfo user) {
        // 处理黑名单记录删除
    }
});