文件搜索(文件搜索极速版App)产品系统

我要开发同款
2026年05月02日
4阅读

技术信息

语言技术
AndroidJavaKotlin
系统类型
Android应用
行业分类
开发工具

作品详情

行业场景

在当今数字化时代,我们的生活和工作都被海量的文件所包围,想要在这些海量文件中快速找到自己需要的那一份,往往让人头疼不已。
在电脑端,有Everyhing和AnyTXT Searcher等搜索软件可以使用,但在手机端却很难找到类似的软件。
本软件就是Android上的一款文件搜索软件,这是一款专注于文件搜索的软件,它将成为你管理手机文件的得力助手。

功能介绍

强大的本地文件搜索与文件浏览/文件管理工具,可搜索手机里的各种文件,包括PDF、办公文件、文本文件等,支持按文件名检索,也能搜索文档内部文字内容。
主要功能:
- 支持按文件名、关键词搜索文件
- 支持PDF、Word、Excel、PPT、TXT等文档全文内容搜索
- 搜索结果按相关度智能排序,关键词高亮显示
- 支持数十种常用语言
- 可直接打开、分享文件,一键跳转到所在文件夹
- 内置文件浏览器,支持按目录层级浏览
- 可对文件进行新建、复制、剪切、删除、重命名等管理操作
- 按图片、视频、文档等类型快速筛选文件

详细介绍及演示:https://zhuanlan.zhihu.com/p/22545329794
OPPO、VIVO、小米、联想、三星可通过软件商店安装(OPPO、VIVO搜索“文件搜索极速版App”)。其它手机可下载apk安装:https://www.pgyer.com/X8FfsPzr

项目实现

责任描述:负责所有工作,包括界面及功能设计、开发、软著申请、备案、上架、推广等。

技术要点:
Lucene移植
将Lucene官方的Java库移植到Android上,并引入项目中;
修改Lucene自带的单元测试用例,并编写一些补充用例,确保在Android上正常运行;
编写单元测试用例,验证Lucene中30多种语言的分词器,发现泰语分词器结果不正确,将其移除;

Jieba分词器适配
根据Lucene分词器接口规范接入Jieba分词器,用于中文分词;
添加繁体转简体、大写转小写、同义词转换、去除停用词的功能;

读取文件内容
文本文件读取之前进行编码检测,避免乱码;
将文件内容读取剥离到单独的进程,避免占用太多内存导致OOM;
将文件内容进行压缩后缓存,加快后续读取速度;

搜索
处理用户输入的搜索词,将分词搜索、短语搜索、同义词搜索、排序、过滤进行等封装到一个搜索请求中;
实现分页机制,避免一次性返回所有结果,尤其是用户输入过程中的临时搜索结果,极大地加快了搜索速度,提升用户体验;

APK大小及内存优化
使用FST替代Jieba默认的字典树,将词典占用的内存由85MB降低至5MB,同时减小apk;
设置混淆规则,移除无用的间接依赖库,减小apk大小;
Apk最终从48MB减至29MB。

单元测试
编写了近200个单元测试用例,并在每次版本发布前执行,尽量确保基本功能正常;

示例图片

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论