searchFriends
API (Android / iOS and Mac / Windows) to search for the local user profile.
You can set the search keyword keywordList
and specify the search scope to set whether to search by the userID
, nickName
, and remark
fields of a user.V2TIMFriendSearchParam searchParam = new V2TIMFriendSearchParam();searchParam.setKeywordList(keywordList);searchParam.setSearchUserID(true);searchParam.setSearchNickName(true);searchParam.setSearchRemark(true);V2TIMManager.getFriendshipManager().searchFriends(searchParam, new V2TIMValueCallback<List<V2TIMFriendInfoResult>>() {@Overridepublic void onSuccess(List<V2TIMFriendInfoResult> v2TIMFriendInfos) {// User profile found successfully}@Overridepublic void onError(int code, String desc) {// Failed to find the user profile}});
V2TIMFriendSearchParam *searchParam = [[V2TIMFriendSearchParam alloc] init];searchParam.keywordList = @[@"keyword1", @"keyword2"];searchParam.isSearchUserID = YES;searchParam.isSearchNickName = YES;searchParam.isSearchRemark = YES;[[V2TIMManager sharedInstance] searchFriends:searchParam succ:^(NSArray<V2TIMFriendInfoResult *> *resultList) {// User profile found successfully} fail:^(int code, NSString *desc) {// Failed to find the user profile}];
template <class T>class ValueCallback final : public V2TIMValueCallback<T> {public:using SuccessCallback = std::function<void(const T&)>;using ErrorCallback = std::function<void(int, const V2TIMString&)>;ValueCallback() = default;~ValueCallback() override = default;void SetCallback(SuccessCallback success_callback, ErrorCallback error_callback) {success_callback_ = std::move(success_callback);error_callback_ = std::move(error_callback);}void OnSuccess(const T& value) override {if (success_callback_) {success_callback_(value);}}void OnError(int error_code, const V2TIMString& error_message) override {if (error_callback_) {error_callback_(error_code, error_message);}}private:SuccessCallback success_callback_;ErrorCallback error_callback_;};V2TIMFriendSearchParam searchParam;searchParam.keywordList = keywordList;searchParam.isSearchUserID = true;searchParam.isSearchNickName = true;searchParam.isSearchRemark = true;auto callback = new ValueCallback<V2TIMFriendInfoResultVector>{};callback->SetCallback([=](const V2TIMFriendInfoResultVector& friendInfoResultList) {// User profile found successfullydelete callback;},[=](int error_code, const V2TIMString& error_message) {// Failed to find the user profiledelete callback;});V2TIMManager::GetInstance()->GetFriendshipManager()->SearchFriends(searchParam, callback);
Was this page helpful?