发到知乎居然被删掉,我也不知道我到底违反了哪条。唉,别人的毕竟是别人的。虽然博客园也是别人的node
我对聊天记录的备份比较执着,也在这上面折腾过很多。碰到过很多使人头疼的麻烦,在这里分享一下经验。python
关于聊天记录的备份、导出,你的手机多是如下几种状况的一种:git
安卓QQ的聊天记录储存于github
data\data\com.tencent.mobileqq\databases\你的QQ.db
这个文件就是咱们备份和导出的核心,只要能拿到这个文件剩下的工做就简单了。微信
这种状况最为简单,直接访问这个目录取出文件便可app
这种状况也比较简单,由于已经解锁OEM,因此在ROOT时并不会再清除数据。那么只要在获取ROOT权限后操做就和状况1同样了ide
[2020.04.04更新]在QQ官方更新了聊天记录备份功能以后,能够先将数据备份到电脑,而后再把数据导入到一个root过的设备(好比模拟器),再提取db文件。学习
也能够用以前的方法以下。this
比较难,当初我就是这种状况。网上搜了大半天也没有个结果,而后隔一段时间再搜仍是没有。终于,在无数次探索失败后,集各家之所长,融会贯通搜索到的东西,总结出一套解决办法。spa
解决的思路是利用ADB命令行来备份整个apk和应用数据。ADB命令里有这样一个功能,可是必须是应用容许备份才能够。不幸的的是QQ如今已经把这个功能给关掉了,不过咱们能够经过降级用之前版本的QQ来实现这个功能(你也能够反编译QQ把那个功能给打开,若是你愿意的话)。然而,降级安装并非直接就能安装的。最近看到有个应用叫核心破解,好像是解决这个问题的。咱们这里说另外一个方法。仍是利用ADB,有个命令是卸载应用的同时保留原有数据,就是用这个命令先把原来的QQ卸载掉,可是还会保存原有数据,再安装支持备份的那个版本的QQ,再利用ADB命令备份应用和应用数据。拿到应用数据后找到状况1的那个文件。
具体的操做以下
1.卸载QQ但保留数据
adb -d uninstall com.tencent.mobileqq
[2020/02/16]更新:今天我想降级安装微信翻到这篇文章发现上面的命令写错了(但愿没有坑害到人)正确的命令应该是
adb uninstall [-k] <package> - remove this app package from the device ('-k' means keep the data and cache directories)
对于QQ应该是
adb uninstall -k com.tencent.mobileqq
卸载后再次安装可能仍是会出现应用程序未安装的提示(反正我是这样),重启一下手机就能够了
2.安装支持备份的QQ版本
3.备份应用及数据
adb backup com.tencent.mobileqq
另外,我提供的这个版本的QQ不只支持ADB备份,并且还内置聊天记录导出为TXT功能。真不知道为何后来腾讯把这个功能给删掉了。咱们也能够经过降级安装的方法用这个QQ的官方导出功能。
这个网上有资料,可是比较少,感兴趣的能够搜一下。当初我折腾这个也是一波三折。我把这个功能写成了一个python脚本,能够很方便的使用了。固然你要会一点python。
若是以为不错也请给个star鼓励一下啊~
利用系统自带的备份应用,备份后找到db文件,而后用上述脚本就能够导出了。
说实话,我写的比较简略,没有一些基础知识可能看不懂。可是我以为我写的是最全的,由于状况3我真的找了好久都没有找到解决办法。因此,若是你看不懂,请学习相关的知识后再来看。我这里提供的比较重要的是思路、老版本QQ和导出脚本,其余的不少东西没办法一一讲到,毕竟你们的基础都不同。固然,也欢迎评论指正。
最后,最最重要的一点是数据无价!任何一步操做前请明白你在干什么,知道会有怎样的后果,事先请经过其余方法备份一些你以为很是重要的聊天记录、图片等,作好万全的准备。
最后祝你们都能备份或者导出本身珍贵的聊天记录