tim用了快一年,有很多特色我觉得挺喜欢,也有不少小bug。最近遇到一个很棘手的大Bug,到处查问资料无果,自己来踩坑解决了。
**问题出现场景:**假设你有一台PC,两台笔记本(一个是Win/一个是MacOS)
然后将tim的个人记录文件夹放在**Onedriver(自动同步的目录下)**后,一段时间后因为多端同步问题,导致tim出现部分联系人聊天记录全空的Bug
0x00.解决方法
问题描述上面说过,就不详细说了,如图是问题出现时的情况:
而且一段时间之后就会再度清空所有聊天记录,包括聊天框都会空白,非常蛋疼。图片文件会存在但是也有有问题(比如明明下载了过了一会就提示没有下载)
先直接说解决方法:
找到你tim本地文件存储的文件夹,然后把红线圈的database类文件先备份一下!(db、dbc等)然后都删了,只留下子文件夹们。然后重新启动tim,会发现大量聊天记录,配置开始重新加载,这是加载后的截图,可自行对比
然后你就会发现你的tim的各种空白记录恢复正常了。但这时候还有个问题,就是你会发现你的所有备注和好友/群头像都是炸的,回到了公元前。
解决办法是:点击好友或者群的头像,然后触发tim的手动加载机制,就会恢复正常,那你可能要问,几百个好友一个个点么?答案是:可以等待一段时间,然后退出重新进入tim,你会发现就重新加载正常了
那么暂时建议:不要把本地聊天记录丢Onedriver的自动同步文件夹,因为自动处理方式比较鱼。有问题了很难区分
0x01.解决思路
上面说了一下解决方法,优点是简单粗暴,快速解决问题;缺点是这样如果你漫游的消息没有正常同步,那你的本地历史记录就很难找到了(虽然有备份但是文件巨多,除非你一个个去尝试哪个是冲突文件,而且也不一定奏效)。下面我提几个核心问题:
Q:tim宣称漫游两年,是真的么,效果如何?
A:目前看是假的,效果很糟。手机PC当天消息都偶尔不同步,如果删除本地文件之后自动回复同步的暂时是24内的消息,我看看后续会不会自动同步。。。
Q:tim/qq的本地文件存储到底是什么结构?聊天文件、聊天图片、聊天音/视频、传输文件记录到底怎么存储的?tim有自动备份么?
A:这个问题是最关键的问题,涉及到我们手动备份/恢复。结构如下,见名知义的就不解释了。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43# 首先大量的db,dbc数据库文件/(少部分索引/映射文件?)
MSGxxx.db
MSGxxx.dbc
├─Audio
│ └─AudioInfo
├─CloudRes
├─DiscussHead
├─Emoji
├─FileCloud #云文件同步
├─FileRecv #文件接收
│ XXX
├─GroupCollection
│ ├─Audio
│ ├─Html
│ ├─Image
│ └─Temp
│ └─Image
├─Image
│ ├─C2C
│ │ └─Image1
│ ├─Group
│ │ ├─Image1
│ │ ├─Image2
│ │ ├─Image3
│ │ ├─Image4
│ │ └─thumbnail
│ ├─MarktingMsgCachePic
│ ├─MsgWander
│ ├─PhotoWall
│ ├─PicFileThumbnails
│ └─Thumbnails
├─MyCollection
│ ├─Audio
│ ├─Image
│ ├─Temp
│ │ └─Image
│ └─Video
├─QQ
│ └─Photo
├─RecommendFace
├─TIM #核心记录之一
├─Video
└─Wireless因为有些文件夹比较有欺骗性,加上配置文件分散所以我先不说我的主观臆断,待实验确定之后再补充。大致来说这个文件夹如果得以良好保存,没有冲突错误,是可以完全恢复(加载)到新的电脑的。同理,tim的自动备份在删掉恢复4h内表现很糟(sad)
Q:tim所说的聊天文件自动备份到云文件中,是备份到哪了?怎么恢复?
A:虽然在设置里面有明确写,但是暂时没有找到。也不知道怎么恢复,反正没有自动恢复。。
Q:遇到类似问题的解决思路是什么?
A:主要还是控制变量,多尝试并对比,然后总结哪里不同,做好备份去试。
Q:未完待续,后续补充。。

