本科毕业论文(设计)文献综述基于Androidapp管理工具的设计系别信息管理系专业计算机科学与技术届别2016届班级12级计科网络班学生姓名学号指导教师职称二O一五年十二月文献综述评分表学生姓名班级2012级计算机科学与技术网络班学号文献综述完成时间2015年12月28日文献综述题目基于Androidapp管理工具的设计文献综述中引用文献情况(学生填写):文献总数19篇,其中:中文11篇,英文8篇,其它语种0篇,期刊论文6篇,教材著作0部,其它文献13篇。文献时间跨度1995年~2016年(以下栏目由老师填写):序号评分内容满分评分1是否全面收集了有关的文献资料152是否充分介绍了与本论文内容相关的研究开发历史与现状,有无重大遗漏203是否科学地评价已有的学术观点、理论和方法204是否在已有成果的基础上阐明本人的观点155是否能预示今后可能的发展趋势与研究方向106行文是否流畅,综述能力如何20总分100评语(请根据评分内容进行评定)指导教师(签名)年月日湖南财政经济学院本科毕业论文(设计)11文献综述前言Android是一款开放性的操作系统。它是使用的Linux内核,并在此基础上进行开发的。但是在Android下一些应用程序我们退出后,但是它还在后台运行浪费手机的硬件资源。根据第11期《中国宽带速率状况报告》(2016年第一季度)显示,2016年第一季度我国宽带下载速度达到9.46M/S,和2016年第四季度相比较提升了13.4%[2]。网速的提升,使我们可以采用NFS网络文件系统,我们能够将可执行文件存放到服务器,然后将服务器上可以运行的文件挂载到手机上,,能够节约手机的存储空间。本课题通过杀死Android中的无用进程,释放内存空间,使手机运行更流畅,研究Android应用程序安装、卸载过程,采用NFS网络文件系统,先将应用的运行文件存储到服务器,然后将服务器上可以运行的文件挂载到手机上,这样一来节约手机的存储空间。1.国内外现状自2007年Android问世一来,因其开源,得到广大硬件厂商的支持,因此迅速抢占了大片智能手机操作系统的市场。据NetMarketShare发布报告称,2015年9月份Android手机市场占有率为53.54%[1]。当Android手机用久之后,后台就有很多应用的服务进程导致手机运行起来不流畅。在国内有很多对Android优化的软件,著名的软件有:猎豹清理大师和360手机卫士以及腾讯手机管家等等,通常会提供释放内存,清理垃圾缓存,卸载等功能,受到国内外用户的一致好评。2.研究的背景、目的和意义Android是一款开放性的操作系统。它是使用的Linux内核,并在此基础上进行开发的。但是在Android下一些应用程序我们退出后,但是它还在后台运行浪费手机的硬件资源。根据第11期《中国宽带速率状况报告》(2016年第一季度)显示,2016年第一季度我国宽带下载速度达到9.46M/S,和2015年第四季度相比较提升了13.4%[2]。网速的提升,使我们可以采用NFS网络文件系统,我们能够将可执行文件存放到服务器,然后将服务器上可以运行的文件挂载到手机上,,能够节约手机的存储空间。湖南财政经济学院本科毕业论文(设计)22本课题通过杀死Android中的无用进程,释放内存空间,使手机运行更流畅,研究Android应用程序安装、卸载过程,采用NFS网络文件系统,先将应用的运行文件存储到服务器,然后将服务器上可以运行的文件挂载到手机上,这样一来节约手机的存储空间。3.实现人力资源管理系统的开发技术及工具介绍3.1Android平台美国谷歌公司在2007年的时候推出安卓系统。安卓是采用开源免费的Linux内核并且是开放全部源代码的一款移动操作系统。手机厂商在得到谷歌公司的许可后,可以根据自己的需求进行二次开发。由于安卓的开放性得到了大量的硬件厂家的支持[3]。3.1.1Android架构安卓系统采用分层的体系结构,它是由应用层(Application)、应用程序框架层(ApplicationFramework)、系统运行库(LibrariesAndroidRuntime)Linux内核层四层组成。(1)应用层应用层在Android架构最上面的一层,里面含有使用者经常使用的一些应用程序和后台运行的服务程序。比如像手机自带浏览器,相册,拨号,短信等等一些应用程序。(2)应用程序框架层应用程序框架层在Android架构第二层,开发人员能够使用这一层所提供的大量的系统接口[4]。这一层由:活动管理器、内容提供器、窗口管理器、视图系统、通知管理器、包管理器、位置管理器、资源管理器、电话管理器、XMPP服务这十个模块组成。3.1.2Android常用组件Android应用程序是通过manifest将零散并且相互有联系的组件组合起来形成一个应用程序[5]。在manifest中,记录了在该应用程序中已经使用的组件信息和相对应的组件有什么作用。安卓中经常使用的组件主要有以下4湖南财政经济学院本科毕业论文(设计)33个:活动组件(Activity)、服务组件(Service)、内容提供者组件(ContentProvider)、广播接收器组件(BroadcastReceiver)[6]。(1)Activity安卓系统中,活动组件是用来实现和用户交互。Activity组件是Android应用程序中不能够缺少的部分。在安卓系统通过栈来管理应用中的活动组件,应用中的活动组件组成了活动组件栈,位于栈最上面的活动组件是手机当前显示的活动组件,不在栈的最上面的活动组件是不活动活动组件。由上面可以表明活动组件是什么状态也就决定了它在栈中处于什么位置。如果退出栈顶活动组件那么栈中第二层的活动组件将被激活显示出来。根据安卓系统的设计,当运行的内存不足的时候,Android会从在活动组件栈最底部的一个活动组件开始来进行销毁,但是在Activity栈最上面的处于一个活跃状态的时候Activity是不会被销毁掉的。也就是说,当活动组件在活动组件栈中的位置越下层的话被Android销毁掉的机会也就会越大。(2)Service服务在Android中Service类通常是用来处理生命周期比较长的应用程序组件和没有界面的功能[7]。Service和Activity的区别是:Service是在后台运行使用者是看不见的,而Activity是可见,service通常是会用来执行查找、数据处理等等。因为Service是长生命周期的操作而设计的,所以它通常是用来执行哪些耗时相对比较长的一些操作。Service继承了onCreate()、onStart()、onDestroy()这三个方法,在Service第一次被启动时,第一步是调用onCreate()方法,第二步调用onStart()方法,当要停止是执行onDestroy()方法Service停止运行[8]。如果在Service已经是处于启动的状态时,Service再次启动时会执行onStart()方法[9]。Service主要分为以下两种:本地服务和远程服务。(3)ContentProvider内容提供者在Android系统中,ContentProvider组件通常是进行应用程序内部之间和应用程序之间的数据进行存储、共享和使用的。数据存储层和应用层之间是通过ContentProvider来提供一个通用标准的接口[10]。(4)BroadcastReceiver广播接收器Android系统中有各种各样的广播,像电池的电量等,开发人员可以利用广播来进行开发程序[11]。应用程序在运行过程中会向系统注册广播事件,当系统接湖南财政经济学院本科毕业论文(设计)44收到一个广播事件后先是判断广播类型,然后注册相对应事件,当应用程序接收到广播后会做相应的处理。Android中的BroadcastReceiver(广播接收器)为了应用程序接收广播而提供的一种组件[12],比如,我们在开发是可以自定义一种广播出现某种结果时会广播,然而接收广播就需要BroadcastReceiver,在接收到广播之后可以做相对应的操作。3.2Androidstudio简介Androidstudio是Google公司在2013年5月发布的一款Android开发环境。Android是一款免费的Android开发集成工具,能够用于Android的开发和调试,它自己带有布局编辑器,你可自己选择你所需要的UI组件拖放,完成后你能够预览自己的布局从而进行调整,它的提示工具更加的强大,能够对程序的性能、可用性、版本兼容等问题进行监控和捕捉[13]。3.3网络文件系统网络文件系统NFS,它是是通过网络来实现文件系统的每项功能,并且NFS能够让用户在感觉上察觉不到异构系统或者跨网络与本机访问本地文件的区别,能够让用户访问远程文件就像在本地硬盘中访问其中本地文件是一样的的感觉。网络文件系统NFS能够让多个用户之间互相共享文件,就像多个用户共同享有一个硬盘,让每个用户使用其中的资源,这样能够让用户使用很少的存储资源享受更多的数据资源。NFS网络文件系统是由Sun公司开发,但是NFS在最开始的时候并没有被开发利用仅仅只是做为一种实验的文件系统,但是制定了NFS协议并且将其收录到RFC标准中。NFS在1985年被提出来。NFS网络文件系统版本一直随着NFS网络文件系统协议修订而在不断的进行更新,在1995年的时候,NFS网络文件系统已经有三个可以投入实际进行使用的版本。在NFS网络文件系统的第二个版本时候就已经实现了NFS网络文件系统协议中的基本功能。在NFS网络文件系统的第三版中对第二版中的数据传输的长度、文件的名字等等一些进行进一步优化改进[14]。第四个版本的NFS网络文件系统和之前的三个版本NFS网络文件系统不同的地方是第四个版本的NFS网络文件系统是有状态的,它可以通过自身获得文件的根节点,不像前面的三个版本的NFS网络文件系统需要借助挂载协议MOUNT帮忙。这样一来不但可以增加网络文件系统的安全性,而且还能够增加网络文件系统的灵活性。在第四个版本的NFS网络文件系统中不但增加对多个客户湖南财政经济学院本科毕业论文(设计)55端访问文件服务器中的同一个文件进行了定义,而且还能够对多个客户端访问文件服务器中的同一个文件产生的冲突进行检测并且对其产生的冲突能够进行相应的处理[15]。NFS由两部分组成:一部分是客户端另外一部分是服务器端,在NFS客户端需要对文件进行访问的时后,第一步会去检查访问的文件是否是本地的文件,如果访问的文件是本地的文件,就会直接去访问本地的硬盘,如果访问的不是本地文件就需要通过网络对NFS服务器端发送请求服务端程序对请求进行处理[16],NFS服务器端把请求处理完成以后,将数据通过网络发送到客户端。NFS网络文件系统不管是客户端向服务端发送文件访问请求还是者服务器端接受客户端请求时,两者都需要经过VFS(VirtualFileSystem)虚拟文件系统的处理[17]。Linux有许多的文件系统像ext2、FAT等等,VFS就是是Linux操作系统接入文件系统的一个接口,它能够将不同的异构文件系统转化为一个统一抽象的接口。当系统在进行调用的时候,使用者能够不用去关心关心我的底层是采用的什么样的存储介质和文件系统类型,这样我们就能够通过这个统一的接口对不同类型的文件系统进行文件操作[18]。NFS网络文件系统客户端当需要发送一个文件请求的时候,需要通过RPC(RemoteProcedureCall)远程过程调用协议发送到服务器端。在发送请求时,利用RPC发送一个调用信息,调用信息由程序号(Prog)、版本号(Vers)、过称号(Proc)三个部分组成,调用信息能够唯一的表示将要请求的程序[19]。服务器端接收请求后通过对调用信息进行识别,能够调用相对应程序进行处理,完成后在最后会返回一个结果客户端,这样就完成了一个远程的请求。NFS网络文件系统,客户端能够通过网络来访问使用服务端的数据资源,就像直接访问客户端的本地硬盘上的资源的感觉