Android数据备份恢复的一种实现.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Android 数据备份恢复的一种实现 简介:?移动互联网是一个新型的融合型网络,随着其高速的发展,将会有越来越多的 3G 手机用户,而手机中有许多重要的数据,本文介绍了基于 Android 备份恢复这些数据的一种实现方法。 引言 随着 3G 时代的到来,移动互联网的发展,手机的功能越来越强大,手机里的数据对每个用户来说都非常的重要,特别是通讯录、日程、短信息、邮件等数据,一旦手机丢失、误删或其他意外使得数据无法正常使用,会给用户带来麻烦,数据备份与恢复这个应用可以帮助用户解决这个问题。 本文主要论述了基于 Android 平台所提供的开发框架和应用组件,并给出了一种数据备份恢复的设计与实现。 背景知识介绍 当前流行的智能手机操作系统有 Windows Mobile,Symbian,iPhone OS,Android 等。本文基于目前最热门的 Android 系统平台,该平台具有开源、易用、开发方便、与个人电脑有较强的融合性等众多优势。 Android 架构 图 1. Android 架构图 Application: Android 会与一个核心应用程序包一起发布,如通讯录、短信息、浏览器等,所有的应用使用 Java 语言所开发。 Application Framework: Android 应用程序框架对于开发者也完全可以访问核心应用程序所使用的 API 框架。该应用程序架构用来简化组件软件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块。该应用程序重用机制使得组建可以被用户替换。 Libraries: Android 程序库包括一个被 Android 系统中各种不同组件所使用的 C/C++ 库集。该库通过 Android 应用程序框架为开发者提供服务。 Linux Kernel: 内核 Android 的核心系统服务依赖于 Linux 2.6 内核,如安全性,内存管理,进程管理,网络协议栈和驱动模型。 Linux 内核也同时作为硬件和软件堆栈之间的硬件抽象层。 备份恢复的设计与实现 备份的方式有本地备份、网络备份,本地备份是直接将数据备份到 SDcard 存储介质中;网络备份是将数据备份到网络服务器中。网络服务器系统是基于 J2EE 架构,通过 HTTP(HTTPS)协议对终端提供服务,备份的应用的数目可以大于等于 1,这里只备份通讯录。系统体系结构图如下所示: 图 2. 数据备份与恢复体系结构图 本地备份恢复 本地备份恢复客户端的流程 用户选择本地 Backup 或 Restore,通过向 Contacts 发送广播信号,如果 Contacts 准确收到广播信号后,开始执行 Backup 或 Restore 操作,完成后反馈操作结果。流程图如下所示: 图 3. 本地备份恢复流程图 本地备份恢复客户端的序列图: 在序列图中,客户端选择本地备份或本地恢复后,发送广播消息通知 Contacts 应用开始备份或恢复 (ContactsReceiver 根据信号类别 : 执行备份或恢复操作 ),通过 FileInputStream 和 FileOutputStream 对数据库文件进行 read/write。 如果是本地备份则将自身的数据库文件写到 SDCard;如果是本地恢复将 SDCard 中对应的文件写到 Contacts 应用对应的路径下,用以覆盖原始数据库文件。 用 Environment.getExternalStorageDirectory() 方法获取 SD 卡的路径 , 卡存储空间大小及已占用空间获取方法 : /* 获取存储卡路径 */ File sdcardDir=Environment.getExternalStorageDirectory(); /*StatFs 看文件系统空间使用情况 */ StatFs statFs=new StatFs(sdcardDir.getPath()); /*Block 的 size*/ Long blockSize=statFs.getBlockSize(); /* 总 Block 数量 */ Long totalBlocks=statFs.getBlockCount(); /* 已使用的 Block 数量 */ Long availableBlocks=statFs.getAvailableBlocks(); 图 4. 本地备份恢复序列图 本地备份恢复客户端的实现: 如下图给出了 BackupRestoreActivity 和 ContactsReceiver 的类图,以及他们工作机制中涉及到的类的结构。 图 5. 本地备份恢复类图 Intent 在这里起着一个媒体

文档评论(0)

82393aa + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档