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) {
// 处理黑名单记录删除
}
});这个页面有帮助吗?