首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
微信 sqlite fts5
2024-09-06
Simple: SQLite3 中文结巴分词插件
一年前开发 simple 分词器,实现了微信在两篇文章中描述的,基于 SQLite 支持中文和拼音的搜索方案.具体背景参见这篇文章.项目发布后受到了一些朋友的关注,后续也发布了一些改进,提升了项目易用性. 最近重新体验微信客户端搜索功能,发现对于中文的搜索已经不是基于单字命中,而是更精准的基于词组.比如搜索"法国",之前如果句子中有"法"和"国"两个字时也会命中,所以如果一句话里包含"国法"就会被命中,但是这跟"法国
SQLite FTS5使用小技巧
SQLite FTS5使用小技巧 在SQLite中,全文索引功能以扩展模块存在.使用全文索引,可以快速对大段文字进行搜索.SQLite提供FTS3.FTS4.FTS5三个模块.其中,FTS5是最新版的全文搜索模块.下面讲解FTS5中的几个全文搜索的小技巧. (1)根据匹配度进行排序:使用ORDER BY bm25(表名) 或者 ORDER BY rank,可以对搜索结果进行排序.排序的顺序为匹配度从高到低. (2)高亮显示特定列:使用highlight函数,可以将词元高亮输出.基本语
Simple: 一个支持中文和拼音搜索的 sqlite fts5插件
之前的工作关系,需要在手机上支持中文和拼音搜索.由于手机上存储数据一般都是用 sqlite,所以是基于 sqlite3 fts5 来实现.这段时间再次入门 c++,所以想用 c++ 实现一下,一来用于练手,二来当时做的时候发现网络上这方面开源的实现不多,也造福下其他人. 背景 搜索现在几乎是每个 APP 必备的功能,用户已经习惯了搜索框搜一下,避免到处去找.搜索也是帮助用户查找旧信息,发现新功能的一个重要手段.平常我们用微信的时候经常会搜索联系人和聊天记录,发现微信这一块做的还是非常好的.关于微
微信 SQLite 数据库修复实践
1.前言 众所周知,微信在后台服务器不保存聊天记录,微信在移动客户端所有的聊天记录都存储在一个 SQLite 数据库中,一旦这个数据库损坏,将会丢失用户多年的聊天记录.而我们监控到现网的损坏率是0.02%,也就是每 1w 个用户就有 2 个会遇到数据库损坏.考虑到微信这么庞大的用户基数,这个损坏率就很严重了.更严重的是我们用的官方修复算法,修复成功率只有 30%.损坏率高,修复率低,这两个问题都需要我们着手解决. 2.SQLite 损坏原因及其优化 我们首先来看 SQLite 损坏的原因,SQL
解密微信sqlite数据库
最近在研究解密微信APP的数据库, 1.通过Android手机内置备份功能,可以获取到微信的数据库文件,再通过adb传到电脑上. 2.获取微信EnMicroMsg.db库的密码(通过IMEI和uin值) 方法见网页:http://www.wjdiankong.cn/android%E9%80%86%E5%90%91%E4%B9%8B%E6%97%85-android%E4%B8%AD%E5%A6%82%E4%BD%95%E8%8E%B7%E5%8F%96%E5%9C%A8%E9%9D%9Eroo
使用 Python 的 SQLite JSON1 和 FTS5 扩展
早在九月份,编程界出现一个名为 json1.c 的文件,此前这个文件一直在 SQLite 的库里面.还有,笔者也曾总结通过使用新的 json1 扩展来编译 pysqlite 的技巧.但现在随着 SQLite 3.9.0 的发布,用户已经不用再费那么大劲了. SQLite 3.9.0 版本做了很大的升级,不仅增加了万众期待的 json1 扩展,还增加了具有全文检索的新版本 fts5 扩展模块. fts5 扩展模块提高了复杂查询的性能,并且提供了开箱即用的 BM25 排序算法.该算法在其他相关领域排
SQLite数据库损坏及其修复探究
数据库如何发生损坏 SQLite 数据库具有很强的抗损坏能力.在执行事务时如果发生应用程序崩溃.操作系统崩溃甚至电源故障,那么在下次访问数据库文件时,会自动回滚部分写入的事务.恢复过程是全自动的,不需要用户或应用程序的任何操作.尽管 SQLite 数据库具有很强的抗损坏能力,但仍有可能发生损坏. 1. db文件被其他线程或进程破坏 数据库文件本身是磁盘文件的一种,因此任何进程都可以往这个文件中写入数据.SQLite 自身对这种行为也无能为力. 1.1. 向已经关闭的文件描述符继续写入数据
iOS App稳定性指标及监测
一个App的稳定性,主要决定于整体的系统架构设计,同时也不可忽略编程的细节,正所谓"千里之堤,溃于蚁穴",一旦考虑不周,看似无关紧要的代码片段可能会带来整体软件系统的崩溃.尤其因为苹果限制了热更新机制,App本身的稳定性及容错性就显的更加重要,之前可以通过发布热补丁的方式解决线上代码问题,现在就需要在提交之前对App开发周期内的各个指标进行实时监测,尽量让问题暴漏在开发阶段,然后及时修复,减少线上出问题的几率 .针对一个App的开发周期,它的稳定性指标主要有以下几个环节构成,用一个脑图
IT四大名著
标题耸人听闻,sorry. CPU.操作系统.编译器和数据库我都不会.我英语也不行,但我认识所有的字母.:-) 万一有人感兴趣呢?https://sqlite.org/doclist.htmlThe SQLite Bytecode EngineThe Virtual Database Engine of SQLite 六级/考研单词: data, alphabet, commit, undo, aggregate, mathematics, default, cluster, resolve,
【腾讯Bugly干货分享】微信iOS SQLite源码优化实践
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57b58022433221be01499480 作者:张三华 前言 随着微信iOS客户端业务的增长,在数据库上遇到的性能瓶颈也逐渐凸显.在微信的卡顿监控系统上,数据库相关的卡顿不断上升.而在用户侧也逐渐能感知到这种卡顿,尤其是有大量群聊.联系人和消息收发的重度用户. 我们在对SQLite进行优化的过程中发现,靠单纯地修改SQLite的参数配置,已经不能彻底解决问题.因此从6.3
用SQLite查看编辑android导出的微信聊天记录
上一篇我们已经能够完成文字版微信聊天记录导出android了,也即复制或剪切MicroMsg.db文件到电脑,以.db格式结尾的文件是数据库文件(database document),需要安装相关数据库软件进行编辑,比如SQLite.本文就用SQLite查看编辑android导出的微信聊天记录. android版微信5.2.1更新 支持微信聊天记录备份到电脑上,赶紧去瞧一下吧 安装SQLite,如果不想安装就下载绿色版的吧.开始见证奇迹了! [1]连接数据源,注册数据库 选择注册数据库路径,即M
浅谈利用SQLite存储离散瓦片的思路和实现方法
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 在多个项目中涉及到互联网地图的内网显示,通过自制工具完成了互联网地图的瓦片下载.但是此种方法存在如下几个问题: a.瓦片均是离散型图片,远程部署非常耗时. b.瓦片下载中,涉及到将互联网瓦片下载至内存,然后建立对应文件夹,然后保存至本地的过程,效率不高. 除了以上两个问题外,还有存储占用比较多等等缺点.是否有类似于ArcGIS的Bundle型瓦片组织格式来解决
微信双开是定时炸弹?关于非越狱iOS上微信分身高危插件ImgNaix的分析
作者:蒸米@阿里移动安全 序言 微信作为手机上的第一大应用,有着上亿的用户.并且很多人都不只拥有一个微信帐号,有的微信账号是用于商业的,有的是用于私人的.可惜的是官方版的微信并不支持多开的功能,并且频繁更换微信账号也是一件非常麻烦的事,于是大家纷纷在寻找能够在手机上登陆多个微信账号的方法,相对于iOS,Android上早就有了很成熟的产品,比如360 OS的微信双开和LBE的双开大师就可以满足很多用户多开的需求. 但是在iOS上,因为苹果的安全机制,并没有任何知名的IT厂商推出微信多开的产品,反
【腾讯Bugly干货分享】微信mars 的高性能日志模块 xlog
本文来自于腾讯bugly开发者社区,未经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/581c2c46bef1702a2db3ae53 Dev Club 是一个交流移动开发技术,结交朋友,扩展人脉的社群,成员都是经过审核的移动开发工程师.每周都会举行嘉宾分享,话题讨论等活动. 本期,我们邀请了 腾讯 WXG Android 高级工程师"闫国跃",为大家分享<微信mars 的高性能日志模块 xlog>. 大家好 我是来自腾讯微信的闫国跃,很荣幸
Android开发-之SQLite数据库
之前我们讲了如何将数据存储在文件中,那么除了这种方式呢,就是我们常见的大家都知道的将数据存储在数据库当中了. 将数据存储在数据库中的优势: 1)存储在数据库中的数据更加方便操作,比如增.删.改.查等 2)可以实现事务的回滚,比如银行转账等 3)方便维护,可读性高 4)资源占用少,性能高 5)-- SQLite数据库在我们日常生活中随处不见了,比如我们的手机~现在市场上的手机都是用SQLite数据库作为数据的存储的. 以及我们常看见的智能家居,也是用SQLite数据库去记录数据的.以及我们经常用到
iOS开发之微信聊天工具栏的封装
之前山寨了一个新浪微博(iOS开发之山寨版新浪微博小结),这几天就山寨个微信吧.之前已经把微信的视图结构简单的拖了一下(IOS开发之微信山寨版),今天就开始给微信加上具体的实现功能,那么就先从微信的聊天界面开始吧.提到封装是少不了写代码的,在封装组件的时候,为了组件的可移植性,我们就不能用storyboard来拖拽了.为了屏幕的适配,适应不同屏幕的手机,所以在封装组件的时候是少不了为我们的组件来添加约束.今天博客中的所有代码都是脱离storyboard的,这些代码在别的工程中也是可以使用的.好,
android微信聊天记录导出到电脑【微信安卓版技巧】
微信,对它又爱又恨!爱的是微信能替代很多手机通话短信,恨的是有些较早前的手机不能友好支持,比如ytkah之前用的i8000,挺上手的,就是没办法装微信,当时工作需要必须用微信,只好忍痛割爱买了个android手机.安卓手机还算可以吧,就是流量大户.占用内存太大了,经常会生成一个很大相册预览图的文件夹,有时拍照就提示空间不足,得先清理一下.等你清理完,妹子的媚眼不懂飞向哪个大叔身上了,哎! 腾讯出招了:通过腾讯电脑管家将微信聊天记录备份到电脑上 如果不想安装电脑管家,可以试试下面的方法androi
ios升级<注:来着微信平台>
<来着微信平台> http://mp.weixin.qq.com/s?__biz=MjM5NTIyNTUyMQ==&mid=2709545194&idx=1&sn=e0e20cd038874aaf57b7e9de0910ab92&scene=23&srcid=0919MyL6LzVkXrSWlpqjyYbr#rd 1零基础小白如何进行 iOS 系统学习首先,学习目标要明确:其次,有了目标,要培养兴趣,经常给自己一些正面的反馈,比如对自己的进步进行鼓励,
iOS版微信朋友圈数据库的简要分析
本文版权归cxun所有,如有转载请注明出处与本文链接,谢谢!原文地址:http://www.cnblogs.com/cxun/p/4550523.html 之前写了一些关于微信聊天记录的博文之后,不少同仁向我提出有关导出缓存在手机的微信朋友圈数据的疑问,于是本人做了一些简单的分析,总结了一下微信在iOS存储朋友圈数据的数据格式,但仅仅是猜想而已,希望这篇博文对一些想动手做这方面开发的朋友们有所帮助. 首先,要感谢Wu,MH的指导,Wu提出iOS中微信朋友圈缓存的数据库存放在“//User/App
微信聊天记录查看器(程序+源码) - iOS版
本文版权归cxun所有,如有转载请注明出处与本文链接,谢谢!原文地址:http://www.cnblogs.com/cxun/p/4338643.html Updates [2016.10.14]感谢大家对本软件的喜爱!最近发现iOS微信数据库的存储方式发生了改变,原本存储在Friend表中的好友数据,现在已经改在了friend_meta表中,而且字段完全不一样,所以本软件的当前版本不能查看最新的微信聊天记录,博主现在手上有一个很紧迫的任务,等完成后会研究并开发新版本,到时会在本文更新并通知,再
热门专题
构造块为什么先于构造方法
k8s动态修改 pod 镜像
vscode保持多个窗口状态
poi导出excel内存溢出
guacd—port默认值
ue4Get Velocity求速度原理
python3 yaml 中文 win
Unity 代码控制材质半透明
ssm如何打印执行的sql语句
自定义指令 鼠标放上,提示点击了文本框
tomcat undertow jetty 比较
xsssqlsec通关教程
mysql 远程加全局锁
PMP 项目与运营的区别
dapper批量新增
将GridView 列表表头固定,无Filter效果
sql sever数据库创建登录名后以用户名访问指定数据库
windows openvpn 如何做梯子
docker挂载nfs 没权限
写入位置0x0000000