很朋友在每次格式化后,或者因刷机后联系人都会丢失,虽然可以事先从Contacts(联系人)里面一条一条的向SIM卡复制进行备份,但这是个极端麻烦的过程(不可以实现全部同时复制),就算这么备份完成了,再从SIM卡复制至N-gage的Contacts(联系人)里面,但此时一个联系人的多个号码信息皆会丢失,联系人姓名也只能记住10个字节(5个汉字)。
除了这种方法以外,那么就是使用蓝牙适配器利用N-gage自带的软件或者其它软件实现备份/恢复联系人,也是个很快捷的方法,但多数朋友也没有购买蓝牙适配器。
再有一种方法就是使用第三方软件安装至N-gage后实现备份联系人形成TXT或者其它类型的文件,这样仅仅形成了备份,可以查看形成备份的文件内容,但无法实现恢复至N-gage的联系人。
N-gage的联系人文件是存储在C:\system\data\Contacts.cdb,首先从该文件名本身的名称分析叫“联系人”,其扩展名cdb也应为Contacts Database的缩写,另外经我实测,添加联系人或者删除联系人后该文件会发生明显的大小变化,基本上确定了该文件可能为N-gage的联系人数据库文件,如果能够将其COPY至N-gage的MMC卡上,然后再将其COPY至原来的位置,那么也就实现了联系人的备份/恢复了,但是一般情况下,使用资源管理器软件,如SeleQ将其复制时总会因提示“文件正在使用”而复制失败,复制都成问题,更何谈未来采用覆盖的方法恢复联系人,因为N-gage启动必定会启动Phone程序(Phone程序就是我们平时看到的待机画面),Phone程序与Contacts紧密关联,有Phone就会有Contacts,有Contacts就会导至Contacts.cdb一直在使用状态,因此要从根本上解决启动N-gage调用的Phone程序。
也就是在昨天我没有什么事,随意下载了“Stools”这个软件,该软件可以让S60机进入“飞行模式”,而且可以让7650、3650这样内存较小的S60手机利用“飞行模式”运行原来因内存制约无法运行的软件或游戏。所谓的“飞行模式”就是让S60手机在开机时不运行Phone程序以及其它与话机关的程序和进程,因Phone没有运行,连带着很多的N-gage的话机功能的程序也没有自动运行,如Messaging、Contacts等等,只留下了一个带有Shell功能的程序管理器,可以在该程序管理器内以最大的内存来运行软件和游戏。另外很多人误以为N-gage情景模式中的Offline模式是飞行模式,这个模式实质上是无网络模式,实质上还是运行着Phone的,有待机画面,还可以看联系人名单。综上所述,因此可以利用该原理可以使Phone和Contacts停止运行,以实现备份和恢复Contacts.cbd联系人文件。
以下是我昨天的测试过程,以及备份/恢复的方法:
1、下载并安装Stools软件
下载并解压后生成的文件名为“System Tools 1.4.sis”(不同版本的版本号可能会有些变化),和一个“keygen.exe”(注册机)文件,先在PC端将这个SIS文件复制至N-gage的MMC卡根下,拔下USB线后进入Menu—》Tools—》Manager—》定位至System Tools 1.4.sis—》Options—》Install,其间会提示安装警告和提示皆选Yes,在提示Select memory时,选择安装至.card MMC卡上,然后再点一次OK便可以进行安装,软件会出现英文提示“安装完成后,手机需要重新启动,请关闭并重启手机”,选择CLOSE,安装继续进行,完成安装后,在Manager里面找到右边没有正方形符号的源安装文件System Tools 1.4.sis按“C”键删除掉,然后退出所有程序,重新开关机一次N-gage以便完成安装。
2、注册sTools,以及sTools的简单介绍
安装完成后会从Menu里面看到sTools图标,找到后运行可以看到其主界面。
Alarms选项卡可以设置增强的闹钟功能,按Options—》New alarm可以新建一个闹钟时间,可以设置闹钟的日期时间,并可以选择midi铃声为闹钟,可以设置提示信息以及重复的次数。
Tools选项卡里面有:Flight mode(飞行模式)、ComPRess RAM(清理内存功能与Appman清理功能一样)、Make oper.logo(设置LOGO)、Restart phone(重新启动手机)、Restore factory(恢复出厂设置)、Format phone(格式化手机,与*#7370#相比可以保留线路2功能)。
接下来注册sTools,在PC上找到刚才下载的keygen.exe,然后在PC上运行keygen.exe,输入你的N-gage IMEI码得到注册码,然后按下图所示选Options—》About—》找到Register,选择后输入刚才算出的注册码完成注册。
3、启动飞行模式,备份联系人Contacts.cdb文件至MMC卡
进行以下操作时无需关闭Q9等软件,进入sTools的Tools选项卡,然对找到Flight mode,Options—》Select,此时sTools会提示“选择flight模式?电话将被关机,然后移除SIM卡再开机”选择Yes后N-gage将会自动关机。
这时将SIM卡拔下来后插入电池再开机,手机在提示“请插入SIM卡”提示的一瞬将进入至Flight mode的警告画面,此时选择Options—》Enter flight mode可以进入飞行模式的Shell程序管理器界面来运行程序,选择Options—》Disable flight mode后将会禁止以飞行模式启动然后显示“请插入SIM卡”的提示,再次重新启动后也不会显示飞行模式的警告画面了。选择Cancel后会出现“请插入SIM卡”的提示。(如下图所示,摄像头照的并不是很清楚)
接下来选择Options—》Enter flight mode进入飞行模式的Shell程序管理界面,这时虽然也同样可以运行Contacts联系人程序,但是一旦其退出后,就完全不会再禁止访问Contacts.cdb文件,此时运行SeleQ进入C:\system\data\找到Contacts.cdb文件按下导航键中心键(此时的左功能键Options是失效的,但options字体不以Q9小字体显示时又会有效)选择Edit—》Copy复制该文件,然后再到E:\(MMC卡)同样按下导航键中心键,选择Edit—》Paste完成备份联系人。此时这个文件也可以COPY至PC上进行备份。
4、恢复联系人的操作(删除再恢复测试)
接下来我自己试一下将联系人全部删除,然后再恢复刚刚备份的Contacts.cdb联系人的操作。
删除全部联系人以及分组后:
然后采用第三步的方法,先拔下SIM卡进入飞行模式,然后再将原来备份的Contacts.cdb恢复至C:\system\data\覆盖同名文件,然后再插入SIM卡进入正常模式查看联系人及分组记录:
恢复后,所有的联系人都成功恢复成功,包括分组信息,另外分组铃声、单人铃声、单键拨号信息也都存在,这也就证明了Contacts.cdb文件的确是联系人数据库文件,其中还包括了联系人的所有信息、分组信息、分组铃声、单独的个人铃声、原来设置的单键拨号等等信息。这样大家在以后万一要刷机前或者要格式化NG前在没有蓝牙适配器的情况下,完全可以通过该方法备份出联系人,然后再恢复。
5、需要注意的几点问题
以上方法要求保持你的N-gage有充足的电力后再操作,不断的开关机是很耗电的操作。
请大家在使用以上方法时,小心操作,不排除因N-gage的个体差异(如安装了很多软件的NG,或者很不稳定的NG)或者因软件冲突造成sTools出错的情况,这里再提示一下,在NG里面不要乱装软件。
备份出来的Contacts.cdb是一个二进制文件,没有专用的编辑软件,有兴趣的朋友可以用二进制编辑软件编辑联系人文件自己进行添加/删除新联系人的操作,这么做是非常麻烦的,只适合有一定PC操作基础的朋友进行操作。
进入飞行模式后,原来C盘不可以复制的文件都可以复制了,这样就可以进行有特定需要的备份操作,如备份短信/彩信,我试过将C:\system\mail(短信/彩信收件箱)目录复制至MMC卡后,再覆盖过去,证明完全利用此方法进行短信的备份和恢复操作,只是缺点同上,没有专门的编辑软件来编辑导出的文件,只能实现备份和恢复操作。
以上备份和恢复联系人或短信的方法应当也同样适用于S60 NOKIA手机的7650、3650、3660、6600、7610。
启运了sTools的飞行模式后,再进入sTools后会提示“Flight mode starter is active.Disable it?”选择YES后,下次如果没有插入SIM卡再启动NG后还可以进入飞行模式,如果选NO则会正常提示插入SIM卡。关于这一点有可能是sTools在NG里面更改了类似Autoexect.bat的文件做了一个标记,以实现当没有SIM卡开机时自动运行,当然这也是我的猜测。
sTools的这项功能让我想起了过去我的N-gage曾出现过“设备无法启动,请联系经销商”故障的现像,经各种方法挽救无效,后经过KF刷机维修才解决,当时出现该现像时拔下SIM卡重新启动后还能提示插入SIM卡,因此个人猜想如果当时安装了sTools并且一直没有把飞行模式关闭,能否在出现错误后再拔下SIM卡进入飞行模式来进行挽救?我猜想如果N-gage出现的是小小的软件固障也许能通过此方法进入飞行模式(硬件固障除外,也不排除较严重的NG软件故障),因此从现在起我的N-gage将一直保持在飞行模式启动状态,万一有一天出现错误时还能通过拔SIM卡的方法启动NG,这就需要时间来证明我的猜想了:)