论文部分内容阅读
随着移动互联网的快速发展,智能手机以及平板电脑越来越普及,移动互联网已经时代已经到来,这使得手机已经不再只是一般的通话工具,而是承载着移动互联网信息传播与分享的一个终端,手机上的数据资源丰富多样,随之智能手机也发展迅猛,内存不断扩展,处理器不断升级来满足用户的需求,手机方便人们生活工作的同时,也出现了一些亟待解决的问题,比如说如何定位手机中的数据,手机不像PC机,屏幕大,操作方便,可以很快地找到用户所需资源,手机上得慢慢查找,因此一款针对手机的搜索系统能够帮助用户更好的使用手机。手机上搭载的操作系统有很多,比如Android、IOS、WindowsPhone等,本文研究的是Android操作系统,因为它是基于Linux的而且是开源的,便于研究核心的部分。本文深入研究了Android操作系统,从底层至上层应用,并以此为基础,分析了Android平台下手机搜索系统的需求,并结合手机的软硬件特性设计了一款界面友好的多功能搜索系统。本文所做的工作有以下几个:第一、设计了一个基于SQLite数据库的统一的文档格式,建立一张数据表来把手机上的各种数据如短信、联系人等整合起来,方便建立索引;第二、将单个中文字切分移植到Android上进行实现,此外,研究了IK分词算法,提出了一种正向迭代不回溯匹配算法,用于扫描字符串,进行分词,并且移植到Android系统中进行了验证,此外,对其字典进行了改进,利用SQLite数据库添加用户自定义的词,然后扩充IK分词的词库,这样有效解决了词典覆盖不全的问题,提高了查全率;第三、深入研究了SQLite开源数据库,本文提出了两种基于SQLite建立索引的方案;第四、在手机数据资源提取时加入了域(field),用户可以选择范围进行搜索;第五、结果排序算法设计中使用了filed、文档的新旧程度以及关键词的权重三个因素来进行排序。本文首先对搜索引擎的基本原理进行了探索讨论,主要研究了搜索引擎的逻辑流程以及各部分所涉及的算法策略,然后结合Lucene开源框架的设计思想,对本文提出的搜索系统进行设计,接着了解了Android应用程序开发,并且在中兴U880手机上验证了此搜索系统的可行性。