短信文本查找之 MATCH 与 LIKE
2014-05-08 17:57
169 查看
最近发现原生短信应用的搜索功能的搜索结果十分不准确,所以就开始追踪代码;
关于android searchview的使用这里就不描述了,简单说一下,android的searchVIew是支持autocomplete的,也就是输入文字就会自动显示一个下拉的搜索结果,相当于快速显示,用户可以直接点击出现的结果进行进一步搜索;所以这里就存在了两次查找,两次查找都会最终在MmssmsProvider中完成,快速显示对应 URI_SEARCH_SUGGEST, 是输入文字发生变化时;一次是真正点击搜索后的界面,对应URI_SEARCH;
具体可以参考MmsSmsProvider;
可以在query函数中看到URI_SEARCH_SUGGEST的执行:
cursor = db.rawQuery(SEARCH_QUERY, SEARCH_STRING);
android的sql语句适用于英文,不符合中国汉字,比如其使用的是text+*,而且使用MATCH,而非LIKE,所以需要修改这两个地方;
查询的字串前后+%,同时SQL语句使用LIKE关键字。
关于android searchview的使用这里就不描述了,简单说一下,android的searchVIew是支持autocomplete的,也就是输入文字就会自动显示一个下拉的搜索结果,相当于快速显示,用户可以直接点击出现的结果进行进一步搜索;所以这里就存在了两次查找,两次查找都会最终在MmssmsProvider中完成,快速显示对应 URI_SEARCH_SUGGEST, 是输入文字发生变化时;一次是真正点击搜索后的界面,对应URI_SEARCH;
具体可以参考MmsSmsProvider;
可以在query函数中看到URI_SEARCH_SUGGEST的执行:
cursor = db.rawQuery(SEARCH_QUERY, SEARCH_STRING);
android的sql语句适用于英文,不符合中国汉字,比如其使用的是text+*,而且使用MATCH,而非LIKE,所以需要修改这两个地方;
查询的字串前后+%,同时SQL语句使用LIKE关键字。
相关文章推荐
- Eclipse上GIT插件EGIT使用手册之八_解决推送冲突
- 例说装饰者模式(Decorator Pattern)
- GCC 中的编译器堆栈保护技术
- 最齐全的网站元数据meta标签的含义和用法
- Domino iNotes服务器配置Apache逆向代理的具体步骤
- Fiddler-http检测调试工具
- Hadoop伪分布模式操作
- 加载本地html遇到的问题
- OpenCV 操作图像的数据区
- HDOJ 1004 Let the Balloon Rise
- js的Prototype属性解释及常用方法
- Android提示版本更新操作流程
- 【OpenCV】calcHist在直方图中的使用
- ffmpeg 时间戳问题汇总
- startActivityForResult用法详解
- Linux 添加服务详解
- C#存储过程分页
- ZOJ 3229 有上下界最大流
- OpenCV 操作图像的数据区
- Ubuntu9.10 grub2 新内核