HarmonyOS 融合搜索为开发者提供搜索引擎级的全文搜索能力,可支持应用内搜索和系统全局搜索,为用户提供更加准确、高效的搜索体验。
基本概念
-
全文索引
记录字或词的位置和次数等属性,建立的倒排索引。 -
全文搜索
通过全文索引进行匹配查找结果的一种搜索引擎技术。 -
全局搜索
可以在系统全局统一的入口进行的搜索行为。 -
全局搜索应用
HarmonyOS 上提供全局搜索入口的应用,一般为桌面下拉框或悬浮搜索框。 -
索引源应用
通过融合搜索索引接口对其数据建立索引的应用。 -
可搜索配置
每个索引源应用应该提供一个包括应用包名、是否支持全局搜索等信息的可搜索实体,以便全局搜索应用发起搜索。 -
群组
经过认证的可信设备圈,可从账号模块获取群组 ID。 -
索引库
一种搜索引擎的倒排索引库,包含多个索引文件的整个目录构成一个索引库。 -
索引域
索引数据的字段名,比如一张图片有文件名、存储路径、大小、拍摄时间等,文件名就是其中的一个索引域。 -
索引属性
描述索引域的信息,包括索引类型、是否为主键、是否存储、是否支持分词等。
运作机制
索引源应用通过融合搜索接口设置可搜索实体,并为其数据内容构建全文索引。全局搜索应用接收用户发起的搜索请求,遍历支持全局搜索的可搜索实体,解析用户输入并构造查询条件,最后通过融合搜索接口获取各应用搜索结果。
图1 融合搜索运作示意图

约束与限制
- 构建索引或者发起搜索前,索引源应用必须先设置索引属性,并且必须有且仅有一个索引域设置为主键,且主键索引域不能分词,索引和搜索都会使用到索引属性。
- 索引源应用的数据发生变动时,开发者应同步通过融合搜索索引接口更新索引,以保证索引和应用原始数据的一致性。
- 批量创建、更新、删除索引时,应控制单次待索引内容大小,建议分批创建索引,防止内存溢出。
- 分页搜索和分组搜索应控制每页返回结果数量,防止内存溢出。
- 构建和搜索本机索引时,应该使用提供的 SearchParameter.DEFAULT_GROUP 作为群组 ID,分布式索引使用通过账号模块获取的群组ID。
- 搜索时需先创建搜索会话,并务必在搜索结束时关闭搜索会话,释放内存资源。
- 使用融合搜索服务接口需要在“config.json”配置文件中添加“ohos.permission.ACCESS_SEARCH_SERVICE”权限。
- 搜索时的 SearchParamter.DEVICE_ID_LIST 必须与创建索引时的deviceId一致。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
鸿蒙
+关注
关注
60文章
3015浏览量
46161 -
HarmonyOS
+关注
关注
80文章
2157浏览量
36277
发布评论请先 登录
相关推荐
热点推荐
1688按图搜索API技术实现详解
在电商系统开发或货源查找工具中,按图搜索商品是一项非常实用的功能。1688平台作为国内领先的B2B电商平台,提供了官方的按图搜索商品API接口。本文将详细讲解如何调用该接口。 一、 接口概
开源鸿蒙6.1 Release版本正式发布,在鸿OS 6.1率先完成升级适配!
3月8日,开源鸿蒙6.1Release版本正式发布!作为新一代版本,6.1在应用开发能力、系统体验、多媒体与安全等领域带来全面升级,为生态商用落地注入全新动能。作为开放原子开源基金会黄金捐赠人、开源
拓维信息旗下在鸿OS 3.0 让OpenClaw开箱即用
AIModelSIG组长单位,依托基于开源鸿蒙自研的在鸿OS3.0底层能力,率先完成OpenClaw的深度适配与预集成,推出搭载融合能力的AIBOX(边缘AI小站)
技术创新 | 开鸿智谷率先实现开源鸿蒙与OpenClaw创新融合
鸿蒙研发的在鸿OS3.0底层能力,完成OpenClaw的深度适配与预集成,推出搭载融合能力的AIBOX。从“大脑”到“四肢”实现OpenClaw的技术本质理解Ope
融合AI的OpenHarmony应用软件开发:ai学习自律辅助软件
*附件:ai study.zip*附件:融合AI的OpenHarmony应用软件开发:ai学习自律辅助软件.pdf
基于开源鸿蒙编写的ai辅助学习软件
发表于 11-12 15:38
开源鸿蒙RISC-V SIG线下技术融合交流会圆满收官
航空航天大学、北京理工大学等多所高校的师生以及社区开发者共同参与。活动旨在汇聚产学研各方力量,推动开源鸿蒙与RISC-V架构在多元场景下的技术融合与生态共建,加速开源技术的创新与产业落地。
【汇思博SEEK100开发板试用体验】在开发板鸿蒙OS搭建QT开发环境
状天线等,为各种功能的实现提供了硬件基础。
二、QT for HarmonyOS 核心架构原理
Qt 框架已对 HarmonyOS(鸿蒙操作系统)提供支持,这使得开发者可以运用熟悉的 Qt 技术栈
发表于 08-24 18:34
餐饮服务与软件创新的融合:解析海底捞APP的Flutter鸿蒙开发之路
在鸿蒙生态快速发展的背景下,作为餐饮行业数字化先锋的海底捞,其鸿蒙版应用集成在线排队、点餐等核心功能,覆盖全国超千家门店。自2024年4月海底捞与华为达成合作意愿, 6月底全面启动开发工作,9月实现
使用DevEcoStudio 开发、编译鸿蒙 NEXT_APP 以及使用中文插件
# 使用DevEcoStudio 开发、编译鸿蒙 NEXT_APP 以及使用中文插件 #鸿蒙开发工具 #DevEco Studio
## 1. 概
发表于 06-11 17:18
开源鸿蒙开发新体验,开鸿Bot系列今日开启预售!
操作系统,实现从国产高性能芯片到操作系统的全栈自主化,构建起一站式的开源鸿蒙学习与开发平台。
融合开发与办公场景,打造开源鸿蒙生态的“第一
发表于 05-16 14:13
鸿蒙OS开发之 融合搜索概述
评论