TUIKit 中的 TUISearch 实现了本地搜索,支持搜索本地存储的聊天记录、联系人、群聊等。搜索可以帮助用户从纷繁的信息中快速找到目标,也可作为运营工具,增加相关内容的引导,简洁高效。
功能展示
接入指引
以下步骤将向您演示如何接入 TUISearch 组件。
购买套餐包
集成 TUISearch
在 Podfile 文件中添加以下内容:
// 集成 TUISearch 组件pod 'TUISearch'
添加后执行
pod instal
。登录 TUIKit
您需要调用
TUICore
的 TUILogin
登录 TUIKit。登录接口内部会默认初始化,不需要额外调用初始化。[TUILogin login:SDKAPPIDuserID:userIDuserSig:userSigsucc:^{// 登录成功} 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
后,自定义消息也会有离线推送且通知栏展示该参数内容。
如果不需要离线推送可以用发消息接口 sendMessage 的参数 V2TIMOfflinePushInfo 中的 disablePush 来控制。如果不希望推送的内容展示为被搜索的文本,可以用参数 V2TIMOfflinePushInfo 中的 desc 来另外设置推送内容。
如何搜索富媒体消息?
富媒体消息包含文件、图片、语音、视频消息。
对于文件消息,界面通常显示文件名,因此创建时可以设置
fileName
参数,作为被搜索的内容,如果 fileName
不设置则会从 filePath
提取文件名,并且都会保存到本地和服务器。而对于图片、语音、视频消息,界面通常显示缩略图或时长,可以指定消息类型做分类搜索,但不能通过关键字搜索。