有奖捉虫:办公协同&微信生态&物联网文档专题 HOT
TUIKit 中的 TUISearch 实现了本地搜索,支持搜索本地存储的聊天记录、联系人、群聊等。搜索可以帮助用户从纷繁的信息中快速找到目标,也可作为运营工具,增加相关内容的引导,简洁高效。
注意
“本地搜索”为 IM 旗舰版功能,购买旗舰版套餐包 后可使用,详情请参见 价格说明

功能展示

搜索接口的界面分为多个部分,第一部分是搜索好友,第二部分是搜索群组、群成员,第三部分是搜索消息且按照会话分组。 您可通过 下载安装应用 即刻体验,效果如下:



接入指引

以下步骤将向您演示如何接入 TUISearch 组件。

购买套餐包

请单击前往 购买旗舰版套餐包

集成 TUISearch

在 Podfile 文件中添加以下内容:
// 集成 TUISearch 组件
pod 'TUISearch'
添加后执行 pod instal

登录 TUIKit

您需要调用 TUICoreTUILogin 登录 TUIKit。登录接口内部会默认初始化,不需要额外调用初始化。
[TUILogin login:SDKAPPID
userID:userID
userSig:userSig
succ:^{
// 登录成功
} fail:^(int code, NSString *msg) {
// 登录失败
}];

启动搜索界面

如果您集成了 TUIConversation 和 TUISearch 组件,此时不需要额外处理,searchBar 默认展示在会话列表的上方。 如果您仅集成 TUISearch,此时可以直接初始化 TUISearchBar 并将其添加到自己的视图上即可。 TUISearchBar 内部封装了搜索的 UI 逻辑和界面,添加 TUISearchBar 后,点击即可触发搜索。
示例代码如下:
// 初始化
TUISearchBar *searchBar = [[TUISearchBar alloc] init];
// self.containerView 是您自己的视图
[self.containerView addSubview:searchBar];

常见问题

如何搜索自定义消息?

您需要使用接口 createCustomMessage:desc:extension 来创建并发送自定义消息,把需要搜索的文本放到 desc 参数中。
如果您使用接口 createCustomMessage 创建自定义消息,本地保存的是二进制数据流,无法被搜索到。
如果您配置了离线推送功能,设置参数 desc 后,自定义消息也会有离线推送且通知栏展示该参数内容。 如果不需要离线推送可以用发消息接口 sendMessage 的参数 V2TIMOfflinePushInfo 中的 disablePush 来控制。
如果不希望推送的内容展示为被搜索的文本,可以用参数 V2TIMOfflinePushInfo 中的 desc 来另外设置推送内容。

如何搜索富媒体消息?

富媒体消息包含文件、图片、语音、视频消息。
对于文件消息,界面通常显示文件名,因此创建时可以设置 fileName 参数,作为被搜索的内容,如果 fileName 不设置则会从 filePath 提取文件名,并且都会保存到本地和服务器。
而对于图片、语音、视频消息,界面通常显示缩略图或时长,可以指定消息类型做分类搜索,但不能通过关键字搜索。