IMSDK
即时通信 IM 提供全球接入、单聊、群聊、消息推送、资料关系链托管、账号鉴权等全方位解决方案,并提供完备的 App 接入、后台管理接口。
V2TIMManager(Friendship)

构造函数

(void) - addFriendListener:
 
(void) - removeFriendListener:
 
(void) - setFriendListener:
 
(void) - getFriendList:fail:
 
(void) - getFriendsInfo:succ:fail:
 
(void) - setFriendInfo:succ:fail:
 
(void) - searchFriends:succ:fail:
 
(void) - addFriend:succ:fail:
 
(void) - deleteFromFriendList:deleteType:succ:fail:
 
(void) - checkFriend:checkType:succ:fail:
 
(void) - getFriendApplicationList:fail:
 
(void) - acceptFriendApplication:type:succ:fail:
 
(void) - acceptFriendApplication:type:remark:succ:fail:
 
(void) - refuseFriendApplication:succ:fail:
 
(void) - deleteFriendApplication:succ:fail:
 
(void) - setFriendApplicationRead:fail:
 
(void) - addToBlackList:succ:fail:
 
(void) - deleteFromBlackList:succ:fail:
 
(void) - getBlackList:fail:
 
(void) - createFriendGroup:userIDList:succ:fail:
 
(void) - getFriendGroupList:succ:fail:
 
(void) - deleteFriendGroup:succ:fail:
 
(void) - renameFriendGroup:newName:succ:fail:
 
(void) - addFriendsToFriendGroup:userIDList:succ:fail:
 
(void) - deleteFriendsFromFriendGroup:userIDList:succ:fail:
 
(void) - subscribeOfficialAccount:succ:fail:
 
(void) - unsubscribeOfficialAccount:succ:fail:
 
(void) - getOfficialAccountsInfo:succ:fail:
 
(void) - followUser:succ:fail:
 
(void) - unfollowUser:succ:fail:
 
(void) - getMyFollowingList:succ:fail:
 
(void) - getMyFollowersList:succ:fail:
 
(void) - getMutualFollowersList:succ:fail:
 
(void) - getUserFollowInfo:succ:fail:
 
(void) - checkFollowType:succ:fail:
 

Protected 类型

enum  V2TIMFriendApplicationType : NSInteger
 
enum  V2TIMFriendType : NSInteger
 
enum  V2TIMFriendRelationType : NSInteger
 
enum  V2TIMFriendAcceptType : NSInteger
 
enum  V2TIMFollowType : NSInteger
 
typedef void(^ V2TIMFriendInfoListSucc) (NSArray< V2TIMFriendInfo * > *infoList)
 
typedef void(^ V2TIMFriendInfoResultListSucc) (NSArray< V2TIMFriendInfoResult * > *resultList)
 
typedef void(^ V2TIMFriendOperationResultSucc) (V2TIMFriendOperationResult *result)
 
typedef void(^ V2TIMFriendOperationResultListSucc) (NSArray< V2TIMFriendOperationResult * > *resultList)
 
typedef void(^ V2TIMFriendCheckResultListSucc) (NSArray< V2TIMFriendCheckResult * > *resultList)
 
typedef void(^ V2TIMFriendGroupListSucc) (NSArray< V2TIMFriendGroup * > *groups)
 
typedef void(^ V2TIMFriendApplicationResultSucc) (V2TIMFriendApplicationResult *result)
 
typedef void(^ V2TIMOfficialAccountInfoResultListSucc) (NSArray< V2TIMOfficialAccountInfoResult * > *resultList)
 
typedef void(^ V2TIMFollowOperationResultListSucc) (NSArray< V2TIMFollowOperationResult * > *resultList)
 
typedef void(^ V2TIMUserInfoResultSucc) (NSString *nextCursor, NSArray< V2TIMUserFullInfo * > *userInfoList)
 
typedef void(^ V2TIMFollowInfoResultListSucc) (NSArray< V2TIMFollowInfo * > *resultList)
 
typedef void(^ V2TIMFollowTypeCheckResultListSucc) (NSArray< V2TIMFollowTypeCheckResult * > *resultList)
 

成员类型定义说明

◆ V2TIMFriendInfoListSucc

- (typedef void(^ V2TIMFriendInfoListSucc) (NSArray< V2TIMFriendInfo * > *infoList))
protected

获取好友列表成功回调

◆ V2TIMFriendInfoResultListSucc

- (typedef void(^ V2TIMFriendInfoResultListSucc) (NSArray< V2TIMFriendInfoResult * > *resultList))
protected

获取指定好友信息成功回调

◆ V2TIMFriendOperationResultSucc

- (typedef void(^ V2TIMFriendOperationResultSucc) (V2TIMFriendOperationResult *result))
protected

好友操作成功回调

◆ V2TIMFriendOperationResultListSucc

- (typedef void(^ V2TIMFriendOperationResultListSucc) (NSArray< V2TIMFriendOperationResult * > *resultList))
protected

好友列表操作成功回调

◆ V2TIMFriendCheckResultListSucc

- (typedef void(^ V2TIMFriendCheckResultListSucc) (NSArray< V2TIMFriendCheckResult * > *resultList))
protected

好友检查成功回调

◆ V2TIMFriendGroupListSucc

- (typedef void(^ V2TIMFriendGroupListSucc) (NSArray< V2TIMFriendGroup * > *groups))
protected

获取群分组列表成功回调

◆ V2TIMFriendApplicationResultSucc

- (typedef void(^ V2TIMFriendApplicationResultSucc) (V2TIMFriendApplicationResult *result))
protected

获取好友申请列表成功回调

◆ V2TIMOfficialAccountInfoResultListSucc

- (typedef void(^ V2TIMOfficialAccountInfoResultListSucc) (NSArray< V2TIMOfficialAccountInfoResult * > *resultList))
protected

获取公众号列表成功回调

◆ V2TIMFollowOperationResultListSucc

- (typedef void(^ V2TIMFollowOperationResultListSucc) (NSArray< V2TIMFollowOperationResult * > *resultList))
protected

关注/取关用户操作成功的回调

◆ V2TIMUserInfoResultSucc

- (typedef void(^ V2TIMUserInfoResultSucc) (NSString *nextCursor, NSArray< V2TIMUserFullInfo * > *userInfoList))
protected

获取自己 关注/粉丝/互关 列表成功的回调

◆ V2TIMFollowInfoResultListSucc

- (typedef void(^ V2TIMFollowInfoResultListSucc) (NSArray< V2TIMFollowInfo * > *resultList))
protected

获取用户关注数量信息成功的回调

◆ V2TIMFollowTypeCheckResultListSucc

- (typedef void(^ V2TIMFollowTypeCheckResultListSucc) (NSArray< V2TIMFollowTypeCheckResult * > *resultList))
protected

用户关注类型检查成功回调

成员枚举类型说明

◆ V2TIMFriendApplicationType

- (enum V2TIMFriendApplicationType) :
protected

好友申请类型

枚举值
V2TIM_FRIEND_APPLICATION_COME_IN 

别人发给我的

V2TIM_FRIEND_APPLICATION_SEND_OUT 

我发给别人的

V2TIM_FRIEND_APPLICATION_BOTH 

别人发给我的 和 我发给别人的。仅拉取时有效

◆ V2TIMFriendType

- (enum V2TIMFriendType) :
protected

好友类型

枚举值
V2TIM_FRIEND_TYPE_SINGLE 

单向好友

V2TIM_FRIEND_TYPE_BOTH 

双向好友

◆ V2TIMFriendRelationType

- (enum V2TIMFriendRelationType) :
protected

好友关系类型

枚举值
V2TIM_FRIEND_RELATION_TYPE_NONE 

不是好友

V2TIM_FRIEND_RELATION_TYPE_IN_MY_FRIEND_LIST 

对方在我的好友列表中

V2TIM_FRIEND_RELATION_TYPE_IN_OTHER_FRIEND_LIST 

我在对方的好友列表中

V2TIM_FRIEND_RELATION_TYPE_BOTH_WAY 

互为好友

◆ V2TIMFriendAcceptType

- (enum V2TIMFriendAcceptType) :
protected

好友申请接受类型

枚举值
V2TIM_FRIEND_ACCEPT_AGREE 

接受加好友(建立单向好友)

V2TIM_FRIEND_ACCEPT_AGREE_AND_ADD 

接受加好友并加对方为好友(建立双向好友)

◆ V2TIMFollowType

- (enum V2TIMFollowType) :
protected

关注类型

枚举值
V2TIM_FOLLOW_TYPE_NONE 

无任何关注关系

V2TIM_FOLLOW_TYPE_IN_MY_FOLLOWING_LIST 

对方在我的关注列表中

V2TIM_FOLLOW_TYPE_IN_MY_FOLLOWERS_LIST 

对方在我的粉丝列表中

V2TIM_FOLLOW_TYPE_IN_BOTH_FOLLOWERS_LIST 

对方与我互相关注

函数文档

◆ addFriendListener:()

- (void) addFriendListener: (addFriendListener(listener:))  NS_SWIFT_NAME

1.1 添加关系链监听器

◆ removeFriendListener:()

- (void) removeFriendListener: (removeFriendListener(listener:))  NS_SWIFT_NAME

1.2 移除关系链监听器

◆ setFriendListener:()

- (void) setFriendListener: (id< V2TIMFriendshipListener >)  listener

设置关系链监听器(待废弃接口,请使用 addFriendListener 和 removeFriendListener 接口)

◆ getFriendList:fail:()

- (void) getFriendList: (V2TIMFriendInfoListSucc succ
fail: (V2TIMFail)  fail 

2.1 获取好友列表

◆ getFriendsInfo:succ:fail:()

- (void) getFriendsInfo: (NSArray< NSString * > *)  userIDList
succ: (V2TIMFriendInfoResultListSucc succ
fail: (V2TIMFail)  fail 

2.2 获取指定好友资料

参数
userIDList好友 userID 列表
  • ID 建议一次最大 100 个,因为数量过多可能会导致数据包太大被后台拒绝,后台限制数据包最大为 1M。

◆ setFriendInfo:succ:fail:()

- (void) setFriendInfo: (V2TIMFriendInfo *)  info
succ: (V2TIMSucc)  succ
fail: (V2TIMFail)  fail 

2.3 设置指定好友资料

◆ searchFriends:succ:fail:()

- (void) searchFriends: (V2TIMFriendSearchParam *)  searchParam
succ: (V2TIMFriendInfoResultListSucc succ
fail: (V2TIMFail)  fail 

2.4 搜索好友(5.4.666 及以上版本支持)

注意
  • 接口返回本地存储的用户资料,可以根据 V2TIMFriendInfoResult 中的 getRelation 来判断是否为好友。
  • 该功能为 IM 旗舰版功能,购买旗舰版套餐包后可使用,详见价格说明

◆ addFriend:succ:fail:()

- (void) addFriend: (V2TIMFriendAddApplication *)  application
succ: (V2TIMFriendOperationResultSucc succ
fail: (V2TIMFail)  fail 

2.5 添加好友

◆ deleteFromFriendList:deleteType:succ:fail:()

- (void) deleteFromFriendList: (NSArray *)  userIDList
deleteType: (V2TIMFriendType deleteType
succ: (V2TIMFriendOperationResultListSucc succ
fail: (V2TIMFail)  fail 

2.6 删除好友

参数
userIDList要删除的好友 userID 列表
  • ID 建议一次最大 100 个,因为数量过多可能会导致数据包太大被后台拒绝,后台限制数据包最大为 1M。
deleteType删除类型(单向好友、双向好友)

◆ checkFriend:checkType:succ:fail:()

- (void) checkFriend: (NSArray< NSString * > *)  userIDList
checkType: (V2TIMFriendType checkType
succ: (V2TIMFriendCheckResultListSucc succ
fail: (V2TIMFail)  fail 

2.7 检查指定用户的好友关系

参数
userIDList要检查的 userID 列表
checkType检查类型 (单向好友检查、双向好友检查)
succ成功后的回调
fail失败后的回调
注意
checkType 的使用需要注意:
  • checkType 如果传入 V2TIM_FRIEND_TYPE_SINGLE,结果返回:V2TIM_FRIEND_RELATION_TYPE_NONE、V2TIM_FRIEND_RELATION_TYPE_IN_MY_FRIEND_LIST 两种情况
  • checkType 如果传入 V2TIM_FRIEND_TYPE_BOTH,结果返回:V2TIM_FRIEND_RELATION_TYPE_NONE、V2TIM_FRIEND_RELATION_TYPE_IN_MY_FRIEND_LIST、 V2TIM_FRIEND_RELATION_TYPE_IN_OTHER_FRIEND_LIST、V2TIM_FRIEND_RELATION_TYPE_BOTH_WAY 四种情况

◆ getFriendApplicationList:fail:()

- (void) getFriendApplicationList: (V2TIMFriendApplicationResultSucc succ
fail: (V2TIMFail)  fail 

3.1 获取好友申请列表

注意
  • 好友申请列表包括发起的好友申请和收到的好友申请。
  • 最多支持100个。

◆ acceptFriendApplication:type:succ:fail:()

- (void) acceptFriendApplication: (V2TIMFriendApplication *)  application
type: (V2TIMFriendAcceptType acceptType
succ: (V2TIMFriendOperationResultSucc succ
fail: (V2TIMFail)  fail 

3.2 同意好友申请

参数
application好友申请信息,getFriendApplicationList 成功后会返回
acceptType建立单向/双向好友关系

◆ acceptFriendApplication:type:remark:succ:fail:()

- (void) acceptFriendApplication: (V2TIMFriendApplication *)  application
type: (V2TIMFriendAcceptType acceptType
remark: (NSString *)  remark
succ: (V2TIMFriendOperationResultSucc succ
fail: (V2TIMFail)  fail 

3.3 同意好友申请,并设置备注

参数
application好友申请信息,getFriendApplicationList 成功后会返回
acceptType建立单向/双向好友关系
  • V2TIMFriendApplication.V2TIM_FRIEND_ACCEPT_AGREE:同意添加单向好友
  • V2TIMFriendApplication.V2TIM_FRIEND_ACCEPT_AGREE_AND_ADD:同意并添加为双向好友
remark好友备注

◆ refuseFriendApplication:succ:fail:()

- (void) refuseFriendApplication: (V2TIMFriendApplication *)  application
succ: (V2TIMFriendOperationResultSucc succ
fail: (V2TIMFail)  fail 

3.4 拒绝好友申请

参数
application好友申请信息,getFriendApplicationList 成功后会返回

◆ deleteFriendApplication:succ:fail:()

- (void) deleteFriendApplication: (V2TIMFriendApplication *)  application
succ: (V2TIMSucc)  succ
fail: (V2TIMFail)  fail 

3.5 删除好友申请

参数
application好友申请信息,getFriendApplicationList 成功后会返回

◆ setFriendApplicationRead:fail:()

- (void) setFriendApplicationRead: (V2TIMSucc)  succ
fail: (V2TIMFail)  fail 

3.6 设置好友申请已读

◆ addToBlackList:succ:fail:()

- (void) addToBlackList: (NSArray *)  userIDList
succ: (V2TIMFriendOperationResultListSucc succ
fail: (V2TIMFail)  fail 

4.1 添加用户到黑名单

◆ deleteFromBlackList:succ:fail:()

- (void) deleteFromBlackList: (NSArray *)  userIDList
succ: (V2TIMFriendOperationResultListSucc succ
fail: (V2TIMFail)  fail 

4.2 把用户从黑名单中删除

◆ getBlackList:fail:()

- (void) getBlackList: (V2TIMFriendInfoListSucc succ
fail: (V2TIMFail)  fail 

4.3 获取黑名单列表

◆ createFriendGroup:userIDList:succ:fail:()

- (void) createFriendGroup: (NSString *)  groupName
userIDList: (NSArray *)  userIDList
succ: (V2TIMFriendOperationResultListSucc succ
fail: (V2TIMFail)  fail 

5.1 新建好友分组

参数
groupName分组名称
userIDList要添加到分组中的好友

◆ getFriendGroupList:succ:fail:()

- (void) getFriendGroupList: (NSArray *)  groupNameList
succ: (V2TIMFriendGroupListSucc succ
fail: (V2TIMFail)  fail 

5.2 获取分组信息

参数
groupNameList要获取信息的好友分组名称列表,传入 nil 获得所有分组信息

◆ deleteFriendGroup:succ:fail:()

- (void) deleteFriendGroup: (NSArray *)  groupNameList
succ: (V2TIMSucc)  succ
fail: (V2TIMFail)  fail 

5.3 删除好友分组

◆ renameFriendGroup:newName:succ:fail:()

- (void) renameFriendGroup: (NSString *)  oldName
newName: (NSString *)  newName
succ: (V2TIMSucc)  succ
fail: (V2TIMFail)  fail 

5.4 修改好友分组的名称

◆ addFriendsToFriendGroup:userIDList:succ:fail:()

- (void) addFriendsToFriendGroup: (NSString *)  groupName
userIDList: (NSArray *)  userIDList
succ: (V2TIMFriendOperationResultListSucc succ
fail: (V2TIMFail)  fail 

5.5 添加好友到一个好友分组

◆ deleteFriendsFromFriendGroup:userIDList:succ:fail:()

- (void) deleteFriendsFromFriendGroup: (NSString *)  groupName
userIDList: (NSArray *)  userIDList
succ: (V2TIMFriendOperationResultListSucc succ
fail: (V2TIMFail)  fail 

5.6 从好友分组中删除好友

◆ subscribeOfficialAccount:succ:fail:()

- (void) subscribeOfficialAccount: (NSString *)  officialAccountID
succ: (V2TIMSucc)  succ
fail: (V2TIMFail)  fail 

6.1 订阅公众号(7.6 及其以上版本支持)

◆ unsubscribeOfficialAccount:succ:fail:()

- (void) unsubscribeOfficialAccount: (NSString *)  officialAccountID
succ: (V2TIMSucc)  succ
fail: (V2TIMFail)  fail 

6.2 取消订阅公众号(7.6 及其以上版本支持)

◆ getOfficialAccountsInfo:succ:fail:()

- (void) getOfficialAccountsInfo: (NSArray< NSString * > *)  officialAccountIDList
succ: (V2TIMOfficialAccountInfoResultListSucc succ
fail: (V2TIMFail)  fail 

6.3 获取公众号列表(7.6 及其以上版本支持)

注意
officialAccountIDList 传空时,获取订阅的公众号列表

◆ followUser:succ:fail:()

- (void) followUser: (NSArray< NSString * > *)  userIDList
succ: (V2TIMFollowOperationResultListSucc succ
fail: (V2TIMFail)  fail 

7.1 关注用户(从 7.8 版本开始支持)

注意

◆ unfollowUser:succ:fail:()

- (void) unfollowUser: (NSArray< NSString * > *)  userIDList
succ: (V2TIMFollowOperationResultListSucc succ
fail: (V2TIMFail)  fail 

7.2 取消关注用户(从 7.8 版本开始支持)

注意

◆ getMyFollowingList:succ:fail:()

- (void) getMyFollowingList: (NSString *)  nextCursor
succ: (V2TIMUserInfoResultSucc succ
fail: (V2TIMFail)  fail 

7.3 获取我的关注列表(从 7.8 版本开始支持)

注意
参数
nextCursor分页拉取标志,第一次拉取填 nil 或 "",回调成功如果 nextCursor 不为 @"",需要分页,可以传入该值再次拉取,直至 nextCursor 返回为 @""
注意

◆ getMyFollowersList:succ:fail:()

- (void) getMyFollowersList: (NSString *)  nextCursor
succ: (V2TIMUserInfoResultSucc succ
fail: (V2TIMFail)  fail 

7.4 获取我的粉丝列表(从 7.8 版本开始支持)

参数
nextCursor分页拉取标志,第一次拉取填 nil 或 "",回调成功如果 nextCursor 不为 @"",需要分页,可以传入该值再次拉取,直至 nextCursor 返回为 @""
注意

◆ getMutualFollowersList:succ:fail:()

- (void) getMutualFollowersList: (NSString *)  nextCursor
succ: (V2TIMUserInfoResultSucc succ
fail: (V2TIMFail)  fail 

7.5 获取我的互关列表(从 7.8 版本开始支持)

参数
nextCursor分页拉取标志,第一次拉取填 nil 或 "",回调成功如果 nextCursor 不为 @"",需要分页,可以传入该值再次拉取,直至 nextCursor 返回为 @""
注意

◆ getUserFollowInfo:succ:fail:()

- (void) getUserFollowInfo: (NSArray *)  userIDList
succ: (V2TIMFollowInfoResultListSucc succ
fail: (V2TIMFail)  fail 

7.6 获取指定用户的 关注/粉丝/互关 数量信息(从 7.8 版本开始支持)

注意

◆ checkFollowType:succ:fail:()

- (void) checkFollowType: (NSArray< NSString * > *)  userIDList
succ: (V2TIMFollowTypeCheckResultListSucc succ
fail: (V2TIMFail)  fail 

7.7 检查指定用户的关注类型(从 7.8 版本开始支持)

注意