毕业设计(论文)-基于android的手机安全卫士的设计与开发.doc_第1页
毕业设计(论文)-基于android的手机安全卫士的设计与开发.doc_第2页
毕业设计(论文)-基于android的手机安全卫士的设计与开发.doc_第3页
毕业设计(论文)-基于android的手机安全卫士的设计与开发.doc_第4页
毕业设计(论文)-基于android的手机安全卫士的设计与开发.doc_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

宁夏理工学院毕业设计摘要近几年,Android开发的应用如雨后春笋快速增长,正由于此增长过快,开发者未来得及制定市场管理规则,很多人钻漏洞,开发出恶意软件,会对Android用户的隐私造成泄露或者带来骚扰,可能直接产生经济上的损失。开发一款基于Android的安全卫士,就是想解决人们经常遇到的这种情况。本系统采用Java语言和MVC设计模式,在Eclipse平台上创建layout布局,实现了页面杀毒、缓存,防盗等功能,并在主页面上将功能模块呈九宫格形式排列。通过一边测试,一边开发的方式,此手机安全卫士软件实现了用户所需的杀毒、防盗和结束进程等基本功能,具有一定的实用性。关键词:手机安全卫士;Android操作系统;MVC全套设计加扣 3012250582IAbstractIn recent years, the use of the Android development have mushroomed rapid growth, is due to the growing too fast, before developers market management rules, many loopholes, developed the malicious software, can cause leaks to Android users privacy or harassment, may cause economic losses directly.Developing an Android based security guard, is to want to solve the people often encountered this kind of situation.This system USES Java language and the MVC design pattern, create layout layout on the Eclipse platform, has realized the page antivirus, caching, guard against theft, and other functions, and aligning function module in the form of scratchable latex on the home page.Through test, and the development way of mobile phone users the security guard software implements the basic function such as anti-virus, security and the end of the process, has a certain practicality.Keywords: Mobile phone security guards; Android Operating System; MVCII目录摘要IAbstractII1 项目的设计背景及意义11.1 项目的设计背景11.2 项目的设计意义22 项目分析32.1 项目需求分析32.2 项目可行性分析32.3 项目功能性分析42.4 项目分析小结53 项目开发平台环境63.1 项目开发技术63.2 项目开发环境63.3 JDK1.7开发环境简介63.4 Eclipse简介63.5 Sqlite3简介73.6 项目开发平台环境小结74 项目总体设计94.1 项目目标94.2 项目设计原则94.3 项目结构框架94.4 项目功能模块设计104.5 数据库设计125 项目详细设计与代码实现155.1 主界面设计155.2 防盗功能165.3 通讯卫士225.4 应用管理22I5.5 手机杀毒246 项目测试与安装25参考文献30结束语31致 谢32 II1 项目的设计背景及意义1.1 项目设计背景站在广场上,触目可见的是人手一部手机,其中大部分人用的都是华为,小米这些Android手机。就中国而言,既是国产手机的市场,又是Android用户的市场,对于外国,可能用的不是国产手机,但通过新闻之内的可知,Android用户也是占了大比分。站在今天的角度来看,智能手机与电脑的差距越来越小,已如同一个微型电脑。其所用的操作系统除了IOS就是Android,加上现在不比以前,苹果手机已跌落神坛,中国的手机市场基本被Android占领。由于Android操作系统一开始为了在全球份额上与苹果竞争,使其成为开源的,供大家各种修改,没有版权纠纷。虽然现在那些知名的公司都率先推出了各有自己侧重点的安全卫士,但都过于繁琐,恨不得将自己所有的功能和业务都加上去,失去了保护手机安全的纯朴感,脱离了Android用户的真实感受。大家已经习惯了手机的存在,很难再过没有手机的日子。智能机的问世,加上技术革新,成本降低,智能机迅速走进了寻常百姓家。有了手机,只是意味着有了一个平台,安装了应用的手机才是真的智能机,才是开启智能机精彩生活的正确打开方式。由于Android提供了一个开源平台,却并没有制定出相应的游戏规则,导致了各个代码大神在Android平台上群魔乱舞,开发出各种软件,发布出去。这些软件打着各种招牌,各种优惠哄骗Android用户,被下载安装使用。其中恶意软件在后台无法看到的地方自主运行,消耗流量,窃取个人资料,偷偷开启支付软件等获得账户密码,然后卖给别人,就会经常收到各种莫名的电话和短信。有点良心的会在你下的应用中植入广告,想取消广告就得开会员充钱。这些使用手机中遇到的种种很容易造成Android用户的损失,比如信息损失已经是人尽皆知,用时已经做好心理准备了,最怕的还是支付账户密码等泄露造成的经济损失。手机造成个人信息泄露已经发生过多起,但以后的生活肯定还会有新的隐私。受够了隐私泄露带来的骚扰电话,诈骗短信的Android用户,自此对手机安全有了深刻的体会,开始为了以后的隐私不被泄露变得关注手机安全,但苦于没有正确的方法应对。对此,有些远见的人开始在网上宣传,教小技巧,让其在手机自带的应用商店或下载的安全卫士商店中下载应用,可以一定程度上避免恶意软件。由于手机上应用商店功能不全,已有的安全卫士不太好用,太繁琐,所以一款友善的图形Android用户界面,简洁的面板操作,具有很好的实用性的手机安全卫士是Android用户的需要也是本次项目开发的目标。1.2 项目设计意义本项目开发的基于Android的手机安全卫士,是具有简单的与人交互的能力,让人们在提示下一步一步来,能够让人快速的熟练它。当人们使用杀毒功能,可以清晰的了解手机软件的健康情况,提示用户杀毒,杀掉常见的木马、宏病毒等;当用户使用应用管理时,可以引导用户通过磁盘管理,对手机软件的权限进行管理,避免可能有危害的权限开启后对用户造成不必要的损失。另外遇到手机丢失时,可以开启超级管理员,能通过设定安全号码的手机发送远程短信防盗指令,对丢掉的手机进行锁屏设置,远程对手机屏幕进行锁定;当用户还没有意识到手机丢了时,手机现使用者输入密码不对或SIM卡变更,也会立马给安全号码发送报警短信,给出手机位置信息。对于生活中经常遇到的骚扰电话和垃圾短信,通讯卫士可以很好的拦截,对与觉得比较重要的短信也可以联网备份到云中,可随时还原。另外,缓存清理,进程管理这些功能也可以在手机使用中解决应用占内存的问题,手机关机自动关闭进程。智能机的广泛使用和人们的隐私保护等心理,让手机的安全问题摆上了桌面。安全卫士的存在即满足了人们对手机的应用权限控制和隐私保护的心理,各种功能也让人们简单易懂,方便快捷的改变手机的进程,优化手机性能,抵挡恶意软件在不知情的情况下偷渡和造成不必要的损失。总之,基于Android的手机安全卫士可以辅助用户对手机内的软件进行很好的管理,对手机内存占用等有了直观的数据管理,让用户对自己的手机可以放心使用,而不是随手拿着一个定时炸弹,也让弊端尽可能消失。2 项目分析2.1 项目需求分析基于Android平台开发的这款保护手机安全的项目,由于协议需要在至少是3.0版本的Android系统手机端上运行。就国内及国外而言,由于它的开源性,Android操作系统已经占领了大部分的市场份额,但想要满足Android用户就需要站在用户的角度切身考虑,通常有这些需求:(1)简洁明了易上手:找寻那些现有的如百度卫士,360安全卫士等不一样的点,开发出这款安全卫士,拥有用户市场才是本人追求的。有名气的通常忽略了简单的页面操作,人们只是想简单的管理手机,达到效果,并不想了解的那么深入,比如App类型。生活节奏那么快,每天工作那么累,Android用户想必也没心情去再接触复杂的东西。手机为何会那么普及?除了人们通信的需要,有部分原因肯定是人们可以自由的操控,没有谁去管,有肆意之乐。所以从体验的角度看,一款手机安全卫士复杂可能会因为没有好的代替而不去更换,但当拥有良好的交互界面,少了些盈利性质,还是有广大的市场的。(2)程序运行稳定:一个应用设计出来是要人们去使用它,认可它的,所以如果发布前不做大量调试,就很可能会在运行的时候出现难以预知的Bug导致软件崩溃,用户无法使用。可以想象,用户又怎么会用一个没什么用的软件在手机里还占内存呢,没法达到想要的效果,而且互相宣传下,更会造成不良的影响,导致这款软件失去了它的市场价值。(3)界面直观,操作性强:Android手机用户是使用者,体验者,他们没必要对程序的代码逻辑有清晰了解,就是一方需求,一方提供服务的供求关系。这就需要页面布局的程序员要为用户切身处地的想,换位思考,自己开发出来先体验一下。考虑到用户群体,要有简单直观的界面,操作不要太多,省去没必要的,有自己的应用定位,才能在几大安全卫士里寻找到突破口。2.2 项目可行性分析2.2.1 技术可行性分析项目开发工具:Eclipse。 项目所用数据库环境:Sqlite3。PC所处系统环境:Windows 7旗舰版或以上版本。 本项目是Java语言编写的,在Eclipse上在src里进行代码编辑,在layout中进行界面布局开发出拥有简洁、一眼看去比较清爽的界面,页面操作简单,各项功能齐全,程序运行稳定的仅供手机使用的安全卫士软件。在技术需求上看来,做出这个项目基本可行,简略的供给大部分普通用户,代码编辑清晰,留有接口,有特别需要的保密的可以自行添加代码。2.2.2 经济可行性分析此软件是为手机用户而做,基于手机内部,不需要多少外部东西。手机本来就轻便,软件较小,不受地理和时间的约束,可随时随地拿起手机查看信息,项目不是很大,需要的人力,物力投资也不是很大,因此手机市场仍然广阔,加上手机的功能不断齐全,有代替电脑的趋势,所以一个保护手机的安全软件愈发重要。因此从经济方面看,是一个具有低付出,高回报的项目市场。2.2.3 操作可行性分析该项目采用大家熟知的页面风格,因为个人能力有限,这样做可以参考其它应用的图标设计和和UI设计,而且本系统也没有涉及ROOT权限等较为底层的功能。本系统界面友好,整体使用MVC模式三层框架做的,用户可以根据自身需要操作。2.3 项目功能性分析此项目整体上以模型视图控制器(MVC)模式构建项目,本系统共包括八大模块:防盗,杀毒,通信卫士,应用管理,进程管理,缓存清理,高级工具以及设置中心模块。(1)手机防盗模块需要密码匹配正确登录进去设置安全号码,报警音乐是将自己喜欢的导入进数据库,具有在安全号码上GPS追踪定位、更换SIM卡播放报警音乐、远程销毁数据、将屏幕锁住四个小功能。(2)通信卫士模块中添加号码选择拦截电话和短信,其它的留了接口,可自行添加,添加了号码后可以拦截此号码打过来的电话和发送的短信。(3)应用管理模块可以管理基本应用,具有卸载、分享、启动、设置的功能,其中手机自带的基础功能如照相等无法管理。(4)进程管理模块顾名思义管理正在运行的进程,可以选择结束,或者设置在关机后自动清理进程。(5)手机杀毒模块开始先初始化杀毒引擎,然后扫描整个内存,用已有的病毒库对内部逐一匹配,扫描完的提示应用安全,以此实现杀毒。(6)缓存清理模块可以将手机缓存的临时图片,图标等删除掉,并显示手机运行内存。(7)高级工具模块可以输入号码将归属地显示出来,连上网将短信等备份在云空间中,只要有网,可随时还原,还有可以锁住程序的功能。(8)设置中模块是给俩个选项,选择自动更新设置打钩、来电归属地显示后面打钩、黑名单拦截开启打钩、开启程序锁打钩、测试设置和选择来电归属地的显示风格,不过有两个功能必须在联网的情况下才能用。2.4 项目分析小结从需求分析、可行性分析和功能分析来看,此系统都是可以做出来,并且具有市场化的能力。在此详细探究了所需的各方面条件,给出用户体验需求和实现效果等方面的内容。如此,编写的源代码的代码逻辑性较强,留的接口方便拓展,方便其添加新的功能。通过需求分析、可行性分析和功能分析三方面来看,对系统要开发的项目思路更加清晰,也指明了系统要实现的功能,使用Java语言实现编码。对于layout界面布局,需要给用户直观的界面操作感受,参考百度卫士这些前辈式的手机安全卫士。经过前期的分析和准备,有信心开发出一个具有市场价值的基于Android的手机安全卫士软件。3 项目开发平台环境3.1 项目开发技术手机安全卫士是基于Android平台开发的项目。对于Android,它是是一种基于Linus V2.6的自由及开放式源代码的操作系统,就是在Android智能手机上使用,由Google公司主导,零部件制造商、平台提供商、移动运营商、手持设备制造商以及市场营销公司开发,不断与智能机的特性相应。因为智能机是可以装在口袋的,所以硬件配置肯定和电脑不能比。只有对Android操作系统的特点有一定的程度了解才可以开发出适合手机运用的软件,所以这个安全卫士基于当下主流Android 4.4开发的。Android 4.4 Kit Kat针对RAM占用进行了优化,一些内存512MB RAM的翻盖、滑盖手机上也能流畅运行。 3.2 项目开发环境介绍开发环境,软硬件需求,平台、语言数据这些,如表3.1所示:表3.1 系统开发环境列表开发环境内容软件要求Windows 7旗舰版操作系统硬件要求至少512 MB内存,至少50GB硬盘开发平台Android Development Tools数据库Sqlite3开发语言Java3.3 JDK1.7开发环境简介在此JDK1.7有些新特性:(1)异常处理改进点 try-with-resources 语句是声明至少一个资源的try语句,在顺序调用完资源后随之关闭,try-with-resources语句可保证每一个声明的资源都会在该语句运用完毕后结束。任何实现了Java.util.AutoCloseable或者java.io.Closeable接口的对象都可被看做资源利用;可以在设计过程中捕获多个异常抛出;对反射方法遇到异常处理变简单了,JDK1.7为次提供了一个新的父类异常接口:Reflective Operation Exception。(2)使用文件的改进点使用java.nio.file.Path类中的Path直接在class里显示文件;读取文件;建立一个文件和目录;复制、移走和删除文件。(3)实现equals、hash code、compare To安全的NULL值测试;计算哈希码;比较数值类型对象。(4)基础改建点Switch 语句中可以用String 类型;支持二进制常量和数字常量中可以使用下划线;泛型实例化类型自动推断;数值可加下划线。(5)其它改动点可将字符串转换为数字;全局Logger;Null检查。JDK 是Java的开发环境,有各种工具给予Java全面的支持。学Java之前首先要配置环境,安装JDK。现在用的Java应用服务器基本都是内置的1.6或者1.7,1.5太老了,1.8才发布没多久不说,事实让人明白了想学Java首先要掌握JDK。3.4 Eclipse简介Eclipse是对于新手来说比较好用的可跨平台开发的宽松的开发环境。它的本质是一个基本架构和提供了一个服务,很简单,能用插件让Eclipse拥有了极强的可塑性。它是用Java语言开发的,在这个平台上用Java开发项目也是很方便的,Java所需要的API都有。Eclipse插件的安装可直接复制,但以后想删除会很麻烦;可以在较当前目录而言的二级目录下创建以link为扩展名的.link文件,不过要重启后才能用;可用Eclipse自带的图形界面安装,可方便的添加删除,简直是菜鸟程序员的福利。3.5 Sqlite3简介Sqlite 跟Android一样也是开源的,是个嵌入式关系数据库。它占用资源很小,由于是嵌入,没有外在依赖,所以用起来很方便,加上处理速度很快,是小型项目所用数据库的首选。Sqlite从版本2到3.0版本的时候,有了一个较大的改进,数据的类型可被数据列控制,在3.0版本中,数据库有了更大的人工智能权限,可自主将每列特有类型数据存入该列,转换了类型放置在数据库中。3.6 项目开发平台环境小结此处主要对开发此项目所需要的系统开发环境、JDK1.7、Eclipse以及Sqlite3进行粗略介绍。这些基础环境是开发一个项目的必要条件,如同一个房子的地基和所需的瓷砖。特别是嵌入式数据库的使用,对开发项目有了更大的信心。344 项目总体设计4.1 项目目标需求分析是设计开发软件周期的第一步,通过需求分析可以很全面的了解项目功能和性能要求。可行性是第二步,通过它这个项目就可以开发出来。在2中根据用户的需求明确了系统的需求和技术、操作、经济可行性,要实现的功能模块。在安卓手机开发中,防盗、杀毒是整个项目的核心。此外,开发出的手机安全卫士系统还具有以下目标:有一定智能的生动清晰的界面;系统测试过运行稳定,没有明显的Bug。 4.2 项目设计原则基于Android的手机安全卫士系统是用来协助Android用户管理手机的,势必会涉及到用户的隐私,要有本该用户的权力,放点权给其管理,首先这个安全卫士是要让Android用户知道安全,其次能让用户一眼看穿放心使用,并且达到用户想要的效果。模块化的设计提高了容错率,加快了系统设计的效率。各个模块相对独立,如同微信要发布的小程序,每个模块负责实现各自功能,构成一个大的安全卫士,各司其职。4.3 项目结构框架开发出的安全卫士的项目功能结构图如图4.1所示,全局一个主界面,由功能独立的防盗、应用管理、高级工具、通讯卫士、杀毒、进程管理、缓存清理和设置中心排版成九宫格形式。图4.1 项目功能结构图4.4 项目功能模块设计经过全盘的分析,该项目大体上由中上方的主界面和下方九宫格排列的八大功能组成。该项目可对软件进行基本的管理,满足Android用户的功能需求和安全保障。(1)手机防盗设置流程手机防盗模块通过预设密码,登录进去。进入重新设置向导,第二步通过读取手机SIM卡的串口号,绑定SIM卡;第三步输入安全号码或者点击安全号码按钮从联系人中读取安全号码;最后开启防盗保护,设置成功,返回防盗主页面。手机用来防盗的模块流程图如图4.2所示: 图4.2 手机用来防盗的模块流程图(2)远程控制防盗指令流程 手机防盗的核心是通过建立在Android平台下的超级管理员功能,GPS追踪出手机位置,是否被盗。如果距离近,可通过设定安全号码的手机发送远程短信防盗指令,对丢掉的手机进行锁屏设置,远程锁定手机屏幕;如果远了,可对手机内存卡格式化,销毁数据,防止隐私泄露,造成其它损失。用户不需要卸载软件,也能保证安全。短信控制防盗指令流程图如图4.3所示:图4.3 远程控制防盗指令流程图(3)手机杀毒流程杀毒要先用Package Manager对手机中安装的程序进行扫描遍历,每一个文件夹,程序包都不放过,通过与病毒库中更新的千万种病毒类型对比,有一样的就提示此软件不安全视为病毒,最终集结了一起杀,杀毒成功后,点击返回。杀毒的流程图如图4.4所示:图4.4 手机杀毒流程图4.5 数据库设计数据库中保留从常用联系人处获取的黑名单信息,从网上下载好的号码归属地信息,录入的常用号码信息,设置好的程序锁信息,联网定时更新的病毒库信息。且可对这些信息具有增删改查的处理功能,同时必须保证程序锁这些限制程序功能的重要信息的安全性。4.5.1 实体E-R图E-R 图有以下几个基本概念:(1)实体:是一个相同属性对象的集合,每个实体都是用矩形表示。(2)关系:实体与属性之间的关系。(3)属性:实体拥有的性质,每个属性都是用椭圆来表示的。通过对系统需求分析得出抽象结果,化为黑名单、常用号码、号码归属地、病毒等实体对象,实体对象属性图如图4.54.8所示:图4.5 黑名单实体图图4.6 常用号码实体图图4.7 号码归属地实体图图4.8 病毒实体图4.5.2 数据表设计该系统采用Sqlite3嵌入式数据库处理数据,把实体属性与实体间关系详细的用表4.1-4.5所示:表4.1 黑名单信息表(black number)字段数据类型是否允许空约束条件说明idint(2)不允许primary key主键(编号)nameVarchar2(10)不允许姓名phoneVarchar2(11)不允许电话号码modeVarchar2(10)不允许foreign key拦截模式此表中放置黑名单的信息,其中包括编号,姓名,电话号码和拦截模式的选择这些属性信息。表4.2 号码归属地信息表(address_db)列名数据类型是否允许空约束条件说明midint(2)不允许primary key主键Card typeVarchar2(8)不允许号码类型cityVarchar2(30)不允许号码所属城市areaVarchar2(5)不允许号码所属城市区号此表中存放号码归属地的信息,其中包括主键,号码类型,号码所属城市和号码所属城市区号这些属性信息。表4.3 常用号码信息表(common number)列名数据类型是否允许空约束条件说明midint(2)不允许primary key主键(号码id)informationVarchar2(20)不允许foreign key号码信息nameVarchar2(20)不允许服务器名称此表中存放常用号码的信息,其中包括号码id,号码信息和所用服务器的名称这些属性信息。表4.4 手机病毒信息表(anti virus)列名数据类型是否允许空约束条件说明midint(2)不允许primary key主键(病毒编号)md5Varchar2(50)不允许数字签名typeVarchar2(15)不允许病毒类型nameVarchar2(20)不允许程序包名describeVarchar2(20)不允许病毒描述此表中存放手机病毒的信息,其中包括病毒编号,数字签名,病毒类型,程序的包名和病毒描述这些属性信息。5 项目详细设计及代码实现5.1 主界面设计 主界面是从Android用户的体验情况设计的一目了然的界面,安全卫士的八大功能模块呈九宫格形式成列其上,在这个主界面中Android用户可以杀毒防盗、清理临时图片文件等。主页面三个字在页面布局中用Text view添加文本放在最上方,用垂直布局,在下方将八大模块呈九宫格排列,以下是部分主界面的后台代码: private String names = new String 手机防盗, 通讯卫士, 应用管理, 进程管理, 手机杀毒, 缓存清理, 高级工具, 设置中心 ;private int iconIds = new int R.drawable.safe,R.drawable.callmsgsafe, R.drawable.app, R.drawable.taskmanager,R.manager, R.drawable.trojan, R.drawable.sysoptimize,R.drawable.atools, R.drawable.settings ;private GridView gridView;private SharedPreferences sp;protected void onCreate(android.os.Bundle savedInstanceState) super.onCreate(savedInstanceState);主界面展示如图5.1所示:图5.1 主界面展示5.2 防盗功能防盗是安全卫士的核心功能,主要防止手机丢失,导致隐私泄露,造成利益损失。初次预设密码后进入防盗界面。当手机丢失,如果距离近,可通过设定安全号码的手机发送远程短信防盗指令,对丢掉的手机进行锁屏设置,远程锁定手机屏幕;如果远了,可对手机内存卡格式化,销毁数据。(1)设置密码与输入密码设计第一次打开手机防盗功能,要先预设密码,然后用getString获取,以后直接输入密码登录,以下是部分后台代码:public void onClick(View v) String passwrod = inputPwd.getText().toString(); String encryptPwd = MD5Utils.md5Encrypt(passwrod); if(pwd.equals(encryptPwd) MyUtils.showToast(ctx,密码正确,进入手机防盗页面); Intent intent = new Intent(ctx,LostFindActivity.class);startActivity(intent);dialog.dismiss();else MyUtils.showToast(ctx,密码不正确,请重新输入);return ; 输入密码效果如图5.2所示: 图5.2 登录界面(2)重新进入设置向导的详细设计重新进入设置向导按下一步提示开启防盗,设置安全号码,具体分四步展示:a 第一步,线性布局,竖直对齐,后台代码如下:public class Setting1Activity extends SettingBaseActivity protected void onCreate(android.os.Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.activity_set1); ; public void toNext(View v) jumpToActivity(Setting2Activity.class); Override public void toPre(View v) 实际效果如图5.3所示:图5.3 防盗设置第一步b 重新进入设置向导第二步,部分后台代码如下:ll_bind_sim.setOnClickListener(new OnClickListener() Overridepublic void onClick(View v) Editor editor = sp.edit();if(isBindSim()editor.putString(MyConstances.KEY_BIND_SIM, null);iv_bind_state.setBackgroundResource(R.drawable.unlock);elseeditor.putString(MyConstances.KEY_BIND_SIM, tm.getSimSerialNumber();iv_bind_state.setBackgroundResource(R.drawable.lock);mit(););实际效果如图5.4所示:图5.4 防盗设置第二步c 重新进入设置向导第三步,部分后台代码如下:protected void onCreate(android.os.Bundle savedInstanceState) super.onCreate(savedInstanceState);setContentView(R.layout.activity_set3);et_input_safe_number = (EditText) findViewById(R.id.et_input_safe_number);/ 判断当前有没有安全号码,如果有,显示在输入框中String oldSafeNumb = sp.getString(MyConstances.KEY_SAFE_NUMBER, );et_input_safe_number.setText(oldSafeNumb);btn_select_safe_number = (Button) findViewById(R.id.btn_select_safe_number);btn_select_safe_number.setOnClickListener(new OnClickListener() Overridepublic void onClick(View v) Intent intent = new Intent(Setting3Activity.this,ShowContactListActivity.class);startActivityForResult(intent, 99););实际效果如图5.5所示:图5.5 防盗设置第三步图d重新进入设置向导第四步,部分后台代码如下:public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) if(isChecked)desc.setText(防盗保护已经开启);elsedesc.setText(防盗保护没有开启);sp.edit().putBoolean(MyConstances.KEY_LOST_FIND_ENABLE, isChecked).commit(););boolean enable = sp.getBoolean(MyConstances.KEY_LOST_FIND_ENABLE, false);if(enable)cbLostFindEnable.setChecked(true);desc.setText(防盗保护已经开启);elsecbLostFindEnable.setChecked(false);desc.setText(防盗保护没有开启);实际效果如图5.6所示:5.6 防盗设置第四步e防盗设置完成,进入到手机防盗界面,显示安全号码,是否开启了防盗保护,总结性介绍了防盗功能,实际效果如图5.7所示:图5.7 手机防盗界面5.3 通讯卫士通讯卫士执行的是黑名单拦截功能,在右上角点添加按钮,然后输入想拦截的号码并在拦截模式中选择性拦截电话和短信,点确定按钮就会添加到Sqlite3,且自动退出通讯卫士模块,再点进去,就会看到添加成功,可删除。实际效果如图5.8所示:图5.8 黑名单界面展示5.4 应用管理应用管理布局上上端显示可用内存和SD卡可用内存,用如下代码创建的方法在后台处理显示应用的名称、占用内存、图标、在内存还是SD卡中,部分后台代码如下:if(positionuserAppInfoList.size() /应该显示用户的应用信息appInfo = userAppInfoList.get(position);elseappInfo= sysAppInfoList.get(position-userAppInfoList.size();/ 设置小标题if(position = 0) / 第一个用户应用的位置vh.subTitle.setVisibility(View.VISIBLE);vh.subTitle.setText(用户应用);else if(position = userAppInfoList.size() / 第一个系统应用vh.subTitle.setVisibility(View.VISIBLE);vh.subTitle.setText(系统应用);elsevh.subTitle.setVisibility(View.GONE);vh.icon.setImageDrawable(appInfo.getIcon();vh.appName.setText(appInfo.getAppName();CharSequence appSize = Formatter.formatFileSize(ctx, appInfo.getAppSize();vh.appSize.setText(appSize);if(appInfo.isRom() / 判断是否安装在内存中vh.appLocation.setText(在内存中);elsevh.appLocation.setText(在SD卡中);return view;实际效果如图5.9所示:图5.9 应用管理界面展示5.5 手机杀毒手机杀毒功能进入后,先初始化杀毒引擎,然后用定时更新的病毒库里的病毒来和手机扫描的每一处对比。部分后台代码如下: if(result=null) / 不是病毒scanBean.isVirus = false;else / 是病毒scanBean.isVirus = true;scanBean.virusDesc = result; / 发送handler信息handler.sendMessage(msg); / 改变进度条currProc+;pbScanning.setProgress(currProc); try Thread.sleep(200); catch (InterruptedException e) e.printStackTrace(); / 扫描完成handler.sendEmptyMessage(FINISHED);.start(); 实际效果如图5.10所示:图5.10 手机杀毒界面展示6 系统测试与安装在bin中将APK复制出来,粘贴到手机的硬盘中,文件如图6.1所示:图6.1 APK存放位置使用QQ,把APK文件通过QQ和手机共享,在手机上下载安装安装界面如图6.2所示:图6.2 手机安装界面安全卫士装入手机后,生成小飞机的快捷方式,直接进入主界面,主界面如图6.3所示:图6.3 软件运行界面手机杀毒界面如图6.4所示:图6.4 手机杀毒界面缓存清理界面如图6.5所示:图6.5 手机缓存清理运行界面进程管理界面如图6.6所示:图6.6 进程管理界面应用管理界面如图6.7所示:图6.7 应用管理界面 通讯卫士界面如图6.8所示:图6.8 通讯卫士界面 安全卫士软件在手机面板上如图6.9所示:图6.9 手机面板显示 参考文献1 匡凤飞. 基于Android平台的手机安全卫士研究与设计J. 电脑知识与技术, 2015,09:4853.2 周运伟. 手机安全问题的难点剖析及其对策J. 信息网络安全,2013,10:7880.3 薛李滨. 基于Android平台的智能手机安全技术研究D. 青海:青海师范大学, 2014.4 Asaf Shabtai,Uri Kanonov,Yuval Elovici,Chanan Glezer,Yael Weiss. “Andromaly”: a behavioral malware detection framework for android devicesJ. Journal of Intelligent Information Systems ,2012,38 (1):161190.5 Asaf Shabtai,Uri Kanonov,Yuval Elovici. Intrusion detection for mobile devices using the knowledge-based, temporal abstraction methodJ. The Journal of Systems & Software ,2010 83(8):15241427.6 (美) 埃克尔 (Eckel,B.). Java编程思想M. 北京:机械工业出版社, 1999.7 韦慕华. Android平台优化和防护工具的设计与实现D. 北京:北京交通大学,2015.8 冯靖超. 基于Android系统的自动化测试平台的设计与实现D. 吉林:吉林大学, 2015.9 吴乐华,孙贤鲁,孟槟,朱晋飞. 基于Android手机软件认证的U盘锁系统J. 信息网络安全.,2014,03:6873.10 陈俊龙,沈奇威,廖建新. 基于Android的企业通信录的设计与实现J. 电信工程技术与标准化. 2014,08:7781.11 马颜军.智能手机安全隐患分析与对策J. 网络安全技术与应用. 2013,10:9495.12 袁刚.基于Android平台应用安全管理软件设计与实现D. 北京:北京邮电大学,2012.13 凡里伟. Android平台手机防盗系统的设计与实现D. 大连:大连理工大学,2012.结束语毕业设计是一次将大学四年所学技术熔炼并自学新知识完成一个成果的机会。在对基于Android的手机安全卫士的设计与开发后,我的自主编程能力有了很大的提高,并且由于所学有些遗忘,去查阅了以前的课本和笔记,巩固和加深了自己的专业技术,同时也提高了自己去网上专门的地方寻找资料且和老师、同学的辩论能力。经过半年多的从开题到设计,其中遇到做不出来的,在王庆月老师的指导下,在询问身边人的演示下,这个基于Android的手机安全卫士的设计与开发的项目基本开

温馨提示

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

评论

0/150

提交评论