【毕业学位论文】(Word原稿)基于Android的数据云备份系统-软件工程_第1页
【毕业学位论文】(Word原稿)基于Android的数据云备份系统-软件工程_第2页
【毕业学位论文】(Word原稿)基于Android的数据云备份系统-软件工程_第3页
【毕业学位论文】(Word原稿)基于Android的数据云备份系统-软件工程_第4页
【毕业学位论文】(Word原稿)基于Android的数据云备份系统-软件工程_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中图分类号: 学校代码: 10055 密级: 硕 士 专 业 学 位 论 文 中文题目:基于 文作者 指导教师 申请学位 培养单位 学科专业 研究方向 答辩委员会主席 评 阅 人 南开大学研究生院 二一三年四月 摘要 摘要 从计算机时代的开始,数据的存储一直是最核心的需求。随着大数据时代来临 ,数据价值越来越被重视。作为保护数据最常用的方式,云备份成为企业和个人选择数据保护的首选方法。另一方面,伴着 动互联网的兴起,数据信息更呈现了分散和跨平台的特点,针对 统的开放性,如何更好的把握系统多样性更好的兼容终端适配,以便让用户个性化的数据得到安全、便捷的存储成为了需要解决的问题。 在产品的设计和开发中,我们采用敏捷开发的理念管理产品团队和开发团队。敏捷开发以人为核心,采用循序渐进及迭代的开发方法,核心原则包括:主张简单以及拥抱变化。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。论文在对 台的技术现状以及发展趋势的进行简要介绍的基础上,详细分析了开发各个环节,并予以实施。 产品实现了 台上基本数据类型的备份还原,可以轻松一键实现备份到服务器、个人电子邮箱和本地存储卡。用户不但可以自由选择需要备份的内容,如:通讯录、短信、视频、图片等,更可以选择某一条数据进行备份,满足了用户个性化备份的需求。结合移动应用的特点,该产品具有低耦合性、实时性、便于移植的特点,同时可维护性强, 具有很强的市场竞争力。 。 关键字 :移动终端 云计算 is a It to to to as to It of we to it to or to In in as a as as to of as of a of in on in of as a of is a of a 录 录 摘要 I I 目 录 1 章 绪 论 . 5 引言 . 5 发背景介绍与意义 . 5 目的主要工作 . 6 第 2 章 相关理论技术基础 . 6 台概述 . 6 述 . 6 台构架 . 7 译与运行原理 . 8 台构架 . 10 简介 . 10 简介 . 10 开发工具 . 11 心包 . 12 第 3 章 台云备份系 统分析与设计 . 错误 !未定义书签。 系统开发背景 . 错误 !未定义书签。 系统功能模块设计 . 18 用户数据备份流程设计 . 18 用户数据存储格式设计 . 18 个人数据加密 . 21 数据备份到云功能设计 . 22 云端数据还原 . 22 备份设置功能 . 23 第 4 章 备份系统详细设计与实现 . 25 产品功能表 . 错误 !未定义书签。 目录 用户数据备份的详细设计与实现 . 25 备份数据菜单项 . 25 选择备份数据 . 27 选择备份方式 . 28 个人邮箱设置 . 30 备份提醒 . 32 个人数据加密的实现 . 34 数据备份到云的实现 . 37 数据备份 . 37 备份完成 . 40 云端数据还原的实现 . 41 还原提醒界面 . 41 输入还原密码 . 44 开始还原 . 46 还原完成 . 49 查看还原程序 . 50 历史记录的实现 . 53 断点续传操作 . 53 清空备份记录 . 54 备份设置的实现 . 56 备份方式设置 . 56 备份方式设置 . 58 加密数据设置 . 59 第 5 章 工作与总结 . 65 主要工作 . 错误 !未定义书签。 联系人同步 . 65 个人资料备份功能 . 65 个人信息的云安全 . 65 上传数据的断点续传 . 66 备份数据的还原功能 . 66 展望 . 66 第 3章 5 第 1章 绪 论 引言 国内 3G 用户整体规模达到 透率 近 18%。 3G 替代 2着 3G 时代的到来,移动互联网的全面发展,手机的功能变得越来越强大,手机里的数据对于用户来说都非常的重要,特别是通讯录、日程、短信息、邮件等数据个人数据,一旦手机丢失、误删或其他意外使得数据无法挽回,会给用户带来麻烦,数据备份与恢复这个应用可以帮助用户解决这个问题。 发背景介绍与意义 这些年,移动通信和互联网成为当今世界发展最快、市场潜力最大、前景最诱人的两大业务。它们的增长速度都是任何预测家未曾预料到的。迄今,全球移动用户已超过 15亿,互联网用户也已 逾 7亿。中国移动通信用户总数超过 联网用户总数则超过 1亿。这一历史上从来没有过的高速增长现象反映了随着时代与技术的进步,人类对移动性和信息的需求急剧上升。越来越多的人希望在移动的过程中高速地接入互联网,获取急需的信息,完成想做的事情。所以,现在出现的移动与互联网相结合的趋势是历史的必然。目前,移动互联网正逐渐渗透到人们生活、工作的各个领域,短信、铃图下载、移动音乐、手机游戏、视频应用、手机支付、位置服务等丰富多彩的移动互联网应用迅猛发展,正在深刻改变信息时代的社会生活,移动互联网经过几年的曲折前行 ,终于迎来了新的发展高潮。 “云计算”是一个很时尚的概念,它既不是一种技术,也不是一种理论。准确说,云计算仅描述了一类棘手的问题,因为现在这个阶段,“计算与数据”跷跷板的平衡已发生变化,即已经到“移动计算要比移动数据要便宜的多。“云计算”代表了一个时代需求,反映了市场关系的变化,谁拥有更为庞大的数据规模,谁就可以提供更广更深的信息服务,而软件和硬件影响相对缩小。 台正在迅速增长,目前在 场有 20 万种 用程序。谷歌也证实,已激活了数亿部 备。用户应 用的数据量也随之增长,照片、通讯录、文件等重要信息的安全成为首要用户需求。作为智能机市场占有率最高的 台,第 3章 6 其终端数据安全当然是最为关键的课题。 本文主要论述了基于 台所提供的开发框架和应用组件,进行数据云备份恢复的设计与实现。 目的主要工作 以轻松一键实现备份到服务器、个人电子邮箱和本地存储卡。用户不但可以自由选择需要备份的内容,如:通讯录、短信、视频、图片等,更可以选择某一条数据进行备份,满 足了用户个性化备份的需求。为了用户的数据安全,我们为用户提供了数据加密功能,用户可以对自己的数据包进行密码加密后再上传至我们的安全服务器或个人邮箱,双重保证用户的安全和隐私。 第 2章 相关理论技术基础 台概述 述 早期由原名为 公司开发,谷歌在 2005 年收购 ,继续对统开发运营,它采用了软件堆层( 名软件叠层)的架构,主要分为三部分。底层 核只提供基本功能 ,其他的应用软件则由各公司自行开发,部分程序以 写。 2011 年初数据显示,仅正式上市两年的操作系统 经超越称霸十年的塞班系统,使之跃居全球最受欢迎的智能手机平台。现在, 统不但应用于智能手机,也在平板电脑市场急速扩张,在智能 面也有较大发展。采用 统主要厂商包第 3章 7 括台湾的 (第一台谷歌的手机 产代工)美国摩托罗拉, ,中国大陆厂商如:魅族( 华为、中兴、联想、蓝魔等。 台构架 根据 架构,从上层到下层,一层一层的了解其相关的具体内容。如下图: 图 2.1 台架构图 ( 1)最上层是“应用层”:包含一些核心应用程序,我们开发的应用程序也属于这一层,开发语言为 ( 2)然后是“应用程序框架层”:根据我自己的理解,应用程序框架层主要是将开发需要调用的功能封装并模块化,这样便于复用以及便于开发者对其进行替换。说白了,应用程序框架其实就是封装的各个现成的类。( 统开发主要是在这一层,修改 度定制) ( 3) 接下来是“运行库层”:该层包含 C/C+开发的库、 章 8 虚拟机 ( 4)最下面一层是“ 件驱动程序包含其中,开发语言是 C 语言。( 了解了上面的内容,关于 用开发、系统开发和驱动开发;应用开发和系统开发主要使用 且需要对应用程序框架及运行原理有很 清楚的认识;而驱动开发则需要了解 需要具备 译与运行原理 在清楚了 平台架构(可以看作是静态原理)后,还需要掌握其动态原理。动态原理包含两部分,一部分是编译原理,另一部分是运行原理。有人会说,搭建一个基于 发环境,编译和运行只要点击按钮即可完成。但是,如果只是“知其然而不知其所以然”的话,在后面的开发中一旦遇到奇怪的问题后可能就束手无措啦。所以,即使是作为初学者,如果有计算机基础,最好还是了解一下这两部 分的内容。 ( 1)使用 具生成 件 ( 2)使用 具将 件编译成 件 ( 3)使用 具将 件编译成 件 ( 4)使用 处理将众多 件转换成一个 件 ( 5)使用 具打包资源文件 ( 6)使用 成未签名的 装文件 ( 7)使用 的 装文件进行签名 使用 言编写的 用程序从源码到安装包的整个过程,示意图如下: 第 3章 9 图 份完成页面 第 3章 10 台构架 简介 首先介绍基于 开发平台。 一种可扩展的开放源代码2001年 11月, , 000万美元的源代码组建了 盟,并由该联盟负责这种工具的后续开发。集成开发环境 (常将其应用范围限定在“开发、构建和调试”的周期之中。 为了帮助集成开发环境 (服目前的局限性,业界厂商合作创建了 不同供应商的工具,并实现了工具之间的互操作性,从而显著改变了项目工作流程,使开发者可以专注在实际的嵌入式目标上。 架的这种灵活性来源于其扩展点。它们是在 定义的已知接口,并充当插件的耦合点。扩展点的范围包括从用在常规表述过滤器中的简单字符串,到一个 何 件定义的扩展点都能够被其它插件使用,反之,任何 了解由扩展点定义的接口外,插件不知道它们通过扩展点提供的服务将如何被使用。 利用 们 可以将高级设计 (也许是采用 低级开发工具 (如应用调试器等 )结合在一起。如果这些互相补充的独立工具采用 么当我们用调试器逐一检查应用时, 话框可以突出显示我们正在关注的器件。事实上,由于以无论 C/C+调试器还是汇编调试器都是有效的,并可以在相同的框架内同时瞄准不同的进程或节点。 简介 供了在 台上开发 用的开发组件,包含了在 具集不仅包括了 拟器和用于 发工具插件( 而且包括了各种用来调试、打包和在模拟器上安装应用的工具。 第 3章 11 开发工具 拟器 ( 运行在计算机上的虚拟移动模拟器,可以使用模拟器来在一个实际的 行环境下设计,调试和测试应用程序。 集成开发环境插件 ( 可以直接从 问其他 发工具 理端口转发 (设置断点,观察线程和进程信息。它提供了一个新的项目向导 (用于快速生成和建立起新 用程序所需的最基本的文件。它使得构建 用程序的过程变得自动化以及简单化。它提供了一个 于为 资源文件编写有效的 调试监视服务 (它集成在 台虚拟机 )中,用于管理运行在模拟器或设备上的进程,并协助进行调试。可以用它来去除进程,选择一个特定程序来调试,生成跟踪数据,查看堆和线程数据,对模拟器或设备进行屏幕快照等。 试桥 ( 它用于向模拟器或手机设备安装应用程序的 件和从命令行访问 模拟器或手机设备。也可以用于将标准的调试器连接到运行在 拟器或手机设备上的应用代码。 源打包工具 ( 可以通过 具来创建 件,这些文件包含了 用程序的二进制文件和资源文件。 口描述语言 ( 它用来生成进程间接口代码,在服务中便可用到。 据库 ( 用程序可以创建和使用 据文件,开发者和使用者也可以方便的访问这些数据文件。 第 3章 12 跟踪显示工具 ( 它可以生成跟踪日志数据的图形分析视图,这些跟踪日志数据由 公程序产生。 创建 工具 ( 它帮助创建磁盘镜像,这个磁盘镜像可以在模拟器上模拟外部存储卡。 具 (dx( 它将 节码重写为 节码 (存储雨 件 中 )。 生成 建文件 ( 它是一个脚本 建文件, 建文件用来编译 用程序 件的 境下开发则不需要这个脚本。 拟设备 (每个 拟设备 (拟了单一的虚拟设备来运行 台,这个平台至少要包括自己的内核,系统图像和数据分区 种配置环境有其自己的平台版本,硬件配置以及 和用户数据,还可以有不同的显示外观等个性化设置,运行时只需要制定需要使用哪个。即可实现多平台下的模拟测试。 心包 含一些底层的辅助类,例如,特定的容器类, 供基本的操作服务,消息传递和进程间的通行 为核心的渲染包,提供图形渲染功能。 供一套丰富的文本处理工具,支持富文本,输入模式等。 含底层 便操作数据库表和数据 . 供各种服务访问数据在手机设备上,程序安装到手机设备和其他的相关资源,以及内容提供展示动态数据。 心用户界面框架。 供标准用户界面元素, ,第 3章 13 是组成我们界面的基本元素 。 供高层的应用程序模型,实现使用 供方便调用系统提供的 供 含一系列的工作在基于 3章 据云备份系统 需求分析与设计 用户需求分析 台数据备份是一款简洁好用的数据备份还原手机客户端软件,可以轻松一键实现备份到服 务器、个人电子邮箱和本地存储卡。用户不但可以自由选择需要备份的内容,如:通讯录、短信、视频、图片等,更可以选择某一条数据进行备份,满足了用户个性化备份的需求。为了用户的数据安全,我们为用户提供了数据加密功能,用户可以对自己的数据包进行密码加密后再上传至我们的安全服务器或个人邮箱,双重保证用户的安全和隐私。为了节省存储空间并且方便用户管理个人数据,系统使用了压缩功能,之前得到的用户数据将被压缩成 进行后续处理。在还原数据时,只需要按一下还原按钮,所有数据就能迅速、准确的还原到用户的手机中。现在, 我们更推出了跨平台还原的新技术,用户可以在塞班和安卓手机上实现跨平台的备份和还原。 第 3章 14 产品功能设计 产品的功能设计一般是在需求分析完成之后进行的一项设计,主要是从整体上界定和说明产品需要实现的功能点,即:我们的产品可以做什么,满足什么需求,为用户解决什么样的问题。功能设计中,通常会辅以流程设计( 流程设计会明确系统的功能流程图,按照不同的模块定义用户如何被一步步引导来使用系统。功能设计对于产品和整个团队来说,其实是个很重要的过程,它通常会决定接下来会如何开展工作。功能设计的成果 包括:产品结构图,功能列表,业务流程图。 产品设计人员在进行产品功能设计时,一般需要考虑以下一些方面: ( 1)自己产品的目标是什么?产品有何意义? ( 2)期望与衡量标准。我们想要做到哪个程度? ( 3)产品的用户群体如何定义?他们使用产品的用户场景(用例)是怎样的? 功能设计是产品设计的基础,功能设计指明了产品设计的方向。如果需求分析说明的是为什么会做这个产品( 那么功能设计则是明确我们做的是什么样子的产品,以及将会如何去做这个产品( 一旦产品功能设计完成,产品的用户模型,功能结构以及架构模型都会变得一目了然。 序号 主模块 子模块 1 一键备份 启动页面 2 文件整理 3 选择文件 4 备份向导 _选择备份方式 5 备份向导 _设置个人邮箱 6 备份提醒页 7 设置备份密码 8 开始备份 9 备份完成 10 一键还原 扫描备份数据 11 历史备份数据 12 还原提醒 13 输入还原密码 第 3章 15 14 开始还原 15 还原完成 16 查看还原程序 17 历史记录 首页 18 继续操作 19 设置 备份方式设置 20 个人 邮箱设置 21 加密数据设置 表 备份平台功能表 当功能设计完成之后,或者功能设计进行的过程中,需要对已经确定的功能模块进行流程设计,表明该功能模块或者功能点如何完成设计的功能。 品交互设计 产品在经历了前期市场调研,以及进行了功能定义和流程设计之后,很重要的一步就是需要进行交互设计。 互设计的原则 产品的交互设计,目的就是尽量营造好的用户体验,在进行用户体验分析和优化的过程中,我们根据 行的调研有: ( 1)硬件的交互设计 我们 根据人机工程学原理,设计应用内部的按键大小等交互要素,尽可能提供多种输入方式。考虑用户在使用应用时,环境对操作的影响。比如:在黑暗的环境下,屏幕的对比度要尽可能的鲜明;需要保持清新的环境下,有信息提示时,选择较低优先级的提示方式。 同时,完全实现单手操作的设计。完善人性化的交互模式,将大大提升用户体验。 ( 2)信息交互设计 信息层架构的排布需要做到:排布结构合理;字体以及图标的排列方式具有可调性,此外,还需要注意采用合适的方式来突出表现重点信息。 第 3章 16 我们在进行云备份还原的产品设计时,尤为注重采用用户的语言来传 达信息,而非技术的语言。有效地使用“易懂语言”。尽量让用户可以很容易的理解每一个操作或者提示分别表示的是什么,好的提示可以起到快捷的说明作用。 我们要注重可读性的好坏,就需要在字体大小、颜色,图标的设计方面注重体验,不能让用户感觉刺眼、不易读取,甚至厌恶。首先,应用的图标( 要保持一致性,这样可以建立起品牌的延续性和良好的用户口碑。应用内部的功能性图标也要一目了然,比如图片的分享、保存等等这些常用功能。 我们也要注意尽量避免一个小模块或者元素包含太多的信息,比如,某些颜色的使用,不要包含太多信息暗 示,因为用户不会刻意去理解这些颜色包含的暗示,同时,也不一定认同或者喜欢设计者所蕴含的信息。 ( 3)功能的交互设计 提供方便的导航功能。这一点,在 统的菜单( 已经做的较为完善,我们将主要界面用顶部菜单链接,在避免混乱的同时,也可以让用户方便的切换。允许任务的中断。 此外性能上减少不必要的潜在等待时间。在用户操作需要提交服务器申请时,会有一段潜在的用户等待时间。一般我们会通过温馨的提示信息告知用户,现在正处于系统潜在的工作状态,从而避免了用户重复操作,增加了系统的负载,导致崩溃。 同样,我们可以通过多任务切换来避免频繁或者较长的等待。通过这些方法可以让用户回避这种的无效时间,从而提高交互效率。 良好的防错机制。用户进行误操作后,用户可以清晰地提供提示信息,比如用户点击退出时,进行提示“是否退出”,用户也可以选择以后跳过此类提示。即便发生了误操作,也尽量帮助用户保存必要信息,允许下次继续。比如,在编写评论时,不小心后退返回编辑前的页面,再次进入上次的编辑页面时,之前编辑好的内容应该自动呈现出来,方便用户继续。 ( 4)体验交互设计 尽量让用户能够掌控交互的具体过程,面对不同层次的用户,提 供不同的选择,为不同的用户提供多种可能性。默认设置的原始状态应当包含一定通用性和智能性,需要对用户的操作起到帮助以及促进的作用。此外,用户还应该具有修改默认状态的权限。 交互设计最终是由交互设计师完成,产品经理的职责一般会专注在产品的交互说明上,需要定义交互说明( 出交互的功能元素,以及接下来的 3章 17 定义清楚交互的过程。 互设计的方法 经过具体的实践、学习和摸索,结合其它相关互联网产品的成功经验,我们总结出了几个较为有效的交互 设计的方法。 ( 1)自然语言法。 自然语言法,可以用来进行交互细节的设计,这样在对一些需要精细的模块进行设计时,会显得一目了然,而且简洁明了。自然语言法它的基本思路就是,通过模拟自然的人与人交流的方式来表达交互的细节。 ( 2)结构图法。 用图形来表达自己的思路,这样更贴近与具体的产品的视觉效果,是进行产品信息构架设计的方法。 结构图法的思路是,在进行交互设计时,开具体的页面细节,只考虑交互信息的整体构架和组织形式。对于页面的细节,等到确定了信息构架之后,我们就可以用自然语言法来解决了。 ( 3)任务排查法。 任务排查法,是对现有的产品进行优化的方法,它能够全面普查产品,包括信息构架和交互细节。这是一种非常好的优化产品的方法。它的成本低,见效快,而且对产品整体的影响很小。 用户任务指的就是,用户在实际使用这个产品时所需要完成的任务。在用户排查法中,分析人员需要在专业技能的基础上,利用自己的主观判断,制定用户任务,而不仅仅是通过对用户行为的研究。这样做,虽然有可能会造成一些误差,遗留一些问题和隐患,但它大大地节约了时间成本,非常符合敏捷开发的原则,至于其中的漏洞,我们可以在 议,即 予以弥补和完善。比如,在实际的工作中,参与某个产品设计的相关人员,都需要进行一些简短的非正式的会议来进行讨论,这样做通常是可以比较准确有效地描述出用户任务的。 以上这三个方法的思路,是在分清了交互设计中的信息架构和交互细节的基础上进行的分类总结。交互设计的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论