by shinichi_wtn
2012-05-19 10:17
历史简介
在Windows Mobile时代,有各种各样的备份短信的软件,定期备份短信已经成了一种习惯,毕竟短信一定程度上是岁月与记忆的载体。但是Windows Phone 7平台,却没有提供相应的API供开发者访问,让人很难接受,在很长的时间内,大家在探寻抽取(extract)短信的方法,在Windows Phone UserVoice(用户心声)网站上http://wpdev.uservoice.com/forums/110705-app-platform/,短信访问接口(SMS Access API)排在第一位,可见该功能对用户是必不可少的。然而,Mango的推出也没有提供相应的功能,有些失望。
没有官方的方法,只能用户们自己探索了,endeffekt最先发现了store.vol(相关帖子),不过那时还没有人能够从store.vol里提取出完整的短信信息;8个月之后Thunder_发现了CommsBackup.xml这个文件,这是Windows Phone自身备份的短信文件(明文存储),经过实验,得知WP系统会定期备份所有短信(一般是每天或者每两天,但是时间并不固定),并存放在\Application Data\Microsoft\Outlook\BackupVols\CommsBackup.xml 这个文件中。从这时开始,终于有可能将短信备份出来了。于是我开发了一个小App,自动将CommsBackup.xml取出,并解码,从而实现了短信的导出功能,由此诞生了Windows Phone下的短信备份工具SMSBackup V0.1,并第一时间在智机网做了分享,然后逐渐有了V0.2、V0.3等等(V0.3开始支持英文,并开始在xda论坛上发布)。
但是CommsBackup.xml是系统生成的,我们没法控制其生成的周期和频率,所以很多时候我们并不能得到所有短信,比如没有最近一至两天的短信。于是我打算探其根本,从store.vol入手,由于store.vol是EDB数据库,在MSDN上学习了EDB API,然后开始探索store.vol的内部结构,逐渐搞定从里面直接读取短信的方法。0.7版开始,软件有了质的变化,直接从store.vol里抽取短信,从而不再依赖于CommsBackup.xml,随时都能得到所有的短信:)
随着WP7 Root Tools 0.9的发布,更多的机器可以使用短信备份了(包括三星二代机、LG机型等),感谢Heathcliff74。
从2012年1月13日发布0.1版,到2012年5月19日发布的0.9版,软件已经基本上趋于稳定和成熟,未来在功能上不会做太大的变化,主要是性能和细节的优化。由于空闲时间有限,所以功能上不可能满足每个人的需求,但是基本的功能都已经实现,0.8版加入了备份MSN和Facebook聊天记录的功能,0.9版则增加了导出csv格式的功能,具体的版本历史可以见后文。
软件功能
- 自动导入store.vol里的短信/MSN和Facebook聊天记录,并分页显示,能够按照会话和发送时间两种方式排序,能够按照联系人、起始时间、关键词筛选短信
- 短信导出(支持导出到IsolateStorage和导出到SkyDrive,支持导出txt、xml、csv三种文件格式) 如果将短信导出到软件的IsolateStorage里面,可以通过任何一款IsolateStorage工具将该文件下载到电脑上(软件的ID为09125ea9-95de-469a-aedc-22e35389ab0a); 如果将短信导出到SkyDrive,可以自定义导出文件名并上传,然后到SkyDrive上SMS文件夹中下载即可。
- 消息与联系人还原,你可以在任何时候使用该软件备份系统重要的数据库store.vol与PimIndex.vol(一般在刷机之前),然后在刷机之后把他们再放回系统,即可实现还原,(该功能并不完美,仅限专业用户,教程可以参见我在智机网发布的帖子)。
兼容性说明
只有Fully-Unlock或者已获取Root权限的机器才能成功运行该软件,因为使用了Native函数,具体的兼容情况如下:
- DFT ROM(理论上支持)
- 所有支持WP7 Root Tools 0.9的机型,包括三星一代二代机、HTC一代机、LG(理论上支持,需要安装WP7 Root Tools 0.9并将本软件加入信任列表即可,可以到这里下载安装WP7 Root Tools)
版本历史
- V0.9版功能改进说明:
1、减小内存占用
2、加速短信读取算法,速度为之前版本的近2倍
3、增加导出CSV的选项
4、Facebook聊天就将会显示好友名(而不是0.8版本中的ID号码)
5、在设置页面切换备份模式(sms模式与msn模式)
- V0.8版功能改进说明:
1、增加读取与备份MSN消息的功能,在菜单中可以切换备份模式(sms模式与msn模式)
2、优化短信列表的界面,采用Metro风格,与系统短信程序的界面类似
3、改进联系人识别算法
4、优化对WP7 Root Tools的支持
- V0.7版功能改进说明:
1、直接从store.vol里抽取短信,不再依赖于CommsBackup.xml
2、对Fully-Unlock的ROM做了优化
3、增加更多的设置选项,取消了退出确认
- V0.6版功能改进说明:
1、支持备份store.vol与PimIndex.vol文件,还原PimIndex.vol可以解决只还原store.vol导致无法搜索联系人的问题。
2、增加文件操作允许的最大时长至15秒(老版本为6秒),当CommsBackup.xml和store.vol体积较大时(>10MB)出错的可能性大大降低。
- V0.5版功能改进说明:
1、增加在导出时应用筛选的功能(在设置中可以设置),该功能允许导出部分筛选后的短信
2、优化设置选项,取消“保存”按钮,所有选项都会自动保存并立刻应用
3、修复V0.4在部分情况下可能出现“Value Does not fall within the expected range”的BUG
- V0.4版功能改进说明:
1、与联系人紧密集成,软件会读取手机的联系人并进行号码匹配,若短信的发送号码在联系人中可以找到,则显示联系人名称,不在联系人中则显示电话号码,同时导出功能也加入联系人名称。
2、新增短信筛选功能,可以按照联系人、起始时间与关键词对短信进行筛选,方便短信的快速过滤和搜索。
3、新增数据库store.vol还原功能,可以在刷机后还原短信和联系人信息(仅限专业用户)
4、修复V0.3以txt格式上传SkyDrive时,可能出现文本上传不全的BUG
5、其他的细节改进和优化
V0.4已知BUG:在某些情况下会出现"导入短信失败: Value Does not fall within the expected range",已经发现问题原因,将会在下一版本中修复(感谢hanf和红色名伶的反馈)
- V0.3版功能改进说明:
1、增加了中英双语言支持
2、修复了V0.2版在上传SkyDrive可能出现程序自动退出的BUG
3、其他细微的BUG修复
v0.3已知BUG:在SkyDrive上传txt时文本可能上传不全甚至为空,已在V0.4版中修复!
- V0.2版功能改进说明:
1、增加了导出txt的功能,可阅读性更强,并且体积更小
2、增加了上传SkyDrive的功能,觉得IsolateStorage下载文件不方便的童鞋可以直接上传到SkyDrive(建议短信很多但流量很少的童鞋通过Wifi上传,一般来说1000条短信导出txt在100KB左右)
3、新增了LG机型的支持(根据机友反馈,还是不能正常工作,另外根据XDA大神指点,目前LG是没有希望了)
4、新增备份系统短信数据库store.vol到IsolateStorage的功能
5、修复了V0.1在某些情况下不能自动更新短信的BUG
V0.2已知BUG:在SkyDrive上传时可能会导致程序立即退出,已在V0.3版中修复!
软件下载
SMSBackup V0.9下载地址
DBank下载地址:http://dl.dbank.com/c08aemvh98
Q&A
- Q:为什么我的手机不能导入短信,提示导入失败?
A:请确保短信备份软件兼容你的手机,请查看兼容性说明
- Q:为什么无法部署软件?
A:请确保短信备份软件兼容你的手机,请查看兼容性说明
- Q:为什么不上市场?
A:因为使用了Native函数,M$是不允许的,即使上了市场,你的手机没有完全解锁,一样无法使用
- Q:将来还会持续更新吗?
A:这要看个人的时间安排,以及软件是否有急需修复的BUG
软件截图