用户可以设置和获取个人的昵称、头像、签名等资料信息,也可以获取到陌生人的资料信息。相关方法在核心类 TencentImSDKPlugin.v2TIMManager.getFriendshipManager()
中。
您可以调用 addFriendListener
(Details) 添加关系链事件监听器。
当不想再接收关系链事件时,可调用 removeFriendListener
(Details) 移除关系链事件监听器。
注意:只有预先设置好关系链事件监听器,才能正常接收到下文中的各种事件通知。
示例代码如下:
// 添加关系链监听器
const frindshipListener = {
onBlackListAdd: (infoList) => {},
onBlackListDeleted: (userids) => {},
onFriendApplicationListAdded: (applicationlist) => {},
onFriendApplicationListDeleted: (applicationlist) => {},
onFriendApplicationListRead: () => {},
onFriendInfoChanged: (frindInfolist) => {},
onFriendListAdded: (frindInfolist) => {},
onFriendListDeleted: (userd) => {},
};
friendshipManager.addFriendListener(frindshipListener);
// 移除关系链监听器
friendshipManager.removeFriendListener(frindshipListener);
您可以调用 getUsersInfo
(Details) 接口查询个人资料,其中参数 userIDList
需填入自己的 UserID。
您可以调用 setSelfInfo
(Details) 接口修改个人资料。
资料修改成功后,您会收到 onSelfInfoUpdated
(Details) 回调。
示例代码如下:
// 获取个人资料
const self = await TencentImSDKPlugin.v2TIMManager.getLoginUser();
TencentImSDKPlugin.v2TIMManager.getUsersInfo([self.data]);
// 设置个人资料
TencentImSDKPlugin.v2TIMManager.setSelfInfo({
nickName: "",
role: 0,
faceUrl: "",
});
您可以调用 getUsersInfo
(Details) 接口查询非好友资料,其中参数 userIDList
填入非好友的 UserID 即可。
说明:不能修改非好友的资料。
您可以调用 getFriendsInfo
(Details) 接口查询指定的好友资料,从回调信息中通过 V2TIMFriendInfoResult
的 relation
字段可以得到该用户与自己的关系:
relation | 与自己的关系 |
---|---|
V2TIM_FRIEND_RELATION_TYPE_NONE |
表示不是好友。 |
V2TIM_FRIEND_RELATION_TYPE_BOTH_WAY |
表示互为好友。 |
V2TIM_FRIEND_RELATION_TYPE_IN_MY_FRIEND_LIST |
表示对方在我的好友列表中。 |
V2TIM_FRIEND_RELATION_TYPE_IN_OTHER_FRIEND_LIST |
表示我在对方的好友列表中。 |
// 获取好友信息
const friendsInfo = await friendshipManager.getFriendsInfo(["userID"]);
您可以调用 setFriendInfo
(Details) 接口修改好友备注等资料。
// 设置好友信息
TencentImSDKPlugin.v2TIMManager.setSelfInfo({
nickName: "",
role: 0,
faceUrl: "",
});
增强版 SDK 中用户资料的更新分好友和陌生人两种情况:
本页内容是否解决了您的问题?