问题描述
在使用CWM进行Android自定义ROM(Neatrom)的工厂重置和恢复时,发现应用程序安装成功但应用数据丢失。需要通过Yodot Data Recovery for Android恢复“My Phone Explorer Notes”和“My Phone Explorer Tasks”的“notes.db”和/或“notes.db-journal”文件,但这些非标准文件类型未能在软件中被识别。问题核心在于确定这两种文件的签名信息:1)十六进制格式的文件签名;2)文件大小(字节);3)文件偏移量;4)文件描述。
解决方案
了解.db和.db-journal文件格式
根据SQLite官网文档,.db文件是主要数据库,其头部开始于字符串“SQLite format 3\000
”。需要注意“\000
”表示零字节或ASCII NUL字符。而“db-journal”文件若存在且被打开时发生工厂重置,则为数据库的日志文件。它以十六进制序列 d9 d5 05 f9 20 a1 63 d7
开始。
记录数据
- SQLite格式.db文件:
- 文件签名:
SQLite format 3\000
- 文件偏移量:文件头部起始,通常为
0x0
文件描述:主要数据库
Db-journal日志文件(如果存在):
- 文件签名:
d9 d5 05 f9 20 a1 63 d7
- 文件偏移量:根据实际情况确定,通常为
0x408
- 文件描述:数据库操作记录
结合这些信息在Yodot Data Recovery软件中输入上述内容,并设置文件偏移量和大小(如db大小约为100 KB到3 MB之间),尝试进行文件恢复。
搜索文件
- 确保在搜索时使用正确格式的十六进制字符串,可以确保数据库文件被准确识别。
- 在“文件类型”字段中输入
SQLite format 3\000
和d9 d5 05 f9 20 a1 63 d7
等值,并设定适当的搜索范围。
示例操作步骤
- 进入恢复工具,创建一个新项目。
- 在“文件类型”部分创建新的文件格式:
- 名称:SQLite
- 文件签名(十六进制):
SQLite format 3\000
- 日志文件签名(十六进制):
d9 d5 05 f9 20 a1 63 d7
- 根据文件大小和偏移量设置搜索范围。
- 开始搜索并定位丢失或被误删除的“notes.db”和“notes.db-journal”文件。
通过以上步骤,用户应能成功识别并恢复所需的核心数据文件。
正文完