版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大连东软信息学院本科毕业设计(论文)论文题目论文题目:基于Android的手机防盗软件的设计与实现系所:电子工程系专业:电子信息工程(嵌入式系统工程方向)学生姓名:学生学号:指导教师:导师职称:讲师完成日期:2014年5月2日大连东软信息学院DalianNeusoftUniversityofInformation大连东软信息学院毕业设计(论文)摘要V基于Android的手机防盗软件的设计与实现摘要在这个信息流量大,通信交流快捷的社会,手机已经成了当下生活不可或缺的一部分,它带来的已经不仅仅停留在通信层面上了,更是人们生活娱乐、及时办公的必需品。在2011年第一季度,Android在全球的市场份额首次超过塞班系统,一跃成为全球第一。其令人嗔目结舌的增长速度已经让其他公司望尘莫及。此开发是基于Android技术上的实现。在Android的应用开发中,手机防盗是一项新起的重要安全技术。在这个过程中,利用到Android广播机制、server等相关技术,在用户首次运行软件的时候,用户需要设置用户名和密码,在确认正确之后,用户可以设置一个安全联系人的手机号码,点击开始防盗后,程序在后台监听手机开启,通过读取当下手机用户的SIM卡IMSI码来判断手机是否当前处于安全状态;如若手机遗失,在拾到手机者讲自己的手机卡放入手机中时,软件检测到非本机SIM卡串号,便会由当前手机向机主联系人号码发送一条信息,安全联系人这端在接收到信息后会显示出当前手机的位置。如此,便有途径和希望能找回机主手机,将机主的损失降至为最低。综上所述,本论文旨在介绍使用Android相关知识,介绍Android手机防盗软件的形成以及使用情况,用最切合实际的文字描述和最直观的图形模式展现此款软件的功能及其优势。本软件有很好的社会拓展性和实用性,在通过对手机用户的详细调查后,从用户切身利益出发,将软件的功能模块更贴近生活,使其更具有广泛的实际意义。关键词:Android,广播机制,短信发送,Service大连东软信息学院毕业设计(论文)AbstractDesignandAchievementofAndroidMobilePhoneAnti-theftSoftwareBasedonAndroidAbstractIntheflowandexchangeofquickcommunicationofthisinformationsociety,thephonehasbecomeanintegralpartofcontemporarylife,itbringsnotstopatthecommunicationlevel,itisthenecessitiesofthepeopleliveandplayinatimelymanneroffice.Inthefirstquarterof2011,AndroidintheglobalmarketshareforthefirsttimemorethanSaipansystem,becamethefirstintheworld.Itsamatterofamazinggrowthreturnmatchedbyothercompanies.
ThisdevelopmentisbasedontheAndroidtechnical.Androidapplicationdevelopment,mobilephonetheftisanewstartingsafetytechnology.Inthisprocess,theuseofAndroidbroadcastmechanism,serverandrelatedtechnologies,inthefirstrunthesoftware,usersneedtosettheusernameandpassword,verifythatthecorrect,theusercansetasecuritycontactphonenumber,clicktheStartafterthetheft,theprograminthebackgroundlisteningphoneopen,SIMcardIMSIcodetoreadthecurrentmobilephoneuserstodeterminewhetherthephoneisinasafestate;Shouldthephoneislost,pickupthephonetospeakabouttheirownphonecardsintothephone,thesoftwaredetectsthenon-nativeSIMcardserialnumber,willbebytheendofthecurrentmaincontactnumberofacellphonetosendamessage,securitycontactsaftertheyreceivedinformationshowingthecurrentlocationofthemobilephone.So,therearewaysandhopingtorecoverthemachinemainmobilephone,theownerofthelossestominimum.
Insummary,thispaperaimstointroduceAndroid-relatedknowledge,ontheformationandtheuseoftheAndroidmobilephoneanti-theftsoftwarewiththemosttomeetthefunctionsandadvantagesoftheactualtextdescriptionandthemostintuitivegraphicalmodeltoshowthissectionsoftware.Thesoftwarehasagoodsocialdevelopmentandpracticality,throughdetailedinvestigationofmobilephoneusers,startingfromtheuser'svitalinterestsofthefunctionalmodulesofthesoftwareclosertolife,makeitmoreofawiderangeofpracticalsignificance.Keywords:Android,Broadcast,SendMessage,Service大连东软信息学院毕业设计(论文)目录目录TOC\o"1-3"\uAbstract II第1章绪论 11.1论文研究主要内容 11.2国内外研究现状 1第2章关键技术介绍 32.1Android开发技术简介 32.1.1Android体系框架介绍 32.1.2Android四大组件 42.2Android开发平台之Eclipse介绍 7第3章系统需求分析 83.1构架概述 83.1.1功能构架 83.1.2模块需求描述 83.2系统开发环境 93.3系统任务的可行性分析 93.3.1技术可行性 93.3.2市场可行性分析 9第4章系统设计 114.1设计指导思想和原则 114.1.1指导思想 114.1.2软件设计原则 114.2构架概述 114.3系统界面原型设计 124.4数据库系统结构设计 14第5章系统实现 165.1配置Android环境 165.2程序主要界面实现 165.3说明文档界面实现 175.4用户登录界面实现 185.5开启防盗界面实现 205.6修改密码界面实现 225.7定位短信界面实现 23第6章系统测试 256.1各界面测试详情 256.1.1主界面测试 256.1.2说明文档测试 256.1.3登陆界面测试 256.1.4防盗界面测试 256.1.5修改密码界面测试 266.1.6SIM卡更换短信接收测试 266.1.7定位测试 266.1.8测试结论 266.2操作测试详情 276.2.1主界面操作 276.2.2说明文档界面操作 276.2.3登陆界面操作 276.2.4防盗界面操作 276.2.5修改密码界面操作 276.3测试可能出现的不足 28第7章结论 29参考文献 30致谢 31大连东软信息学院毕业设计(论文)-第1章绪论2007年11月5日,距离苹果发布第一代iPhone手机仅四个月,谷歌公司正式公布Android操作系统,并且宣布与34家手机厂商、运营商成立“开房手机联盟(OHA)”,自此这个基于Linux内核的Android系统正式登上历史舞台。“开源”这个词对每一个了解Android的人都不陌生,他是Android能够快速成长的最关键因素。Android的开源,打破以往操作系统平台的授权模式,不但降低了厂商的成本,也赋予了他们更多的自由发挥的空间,更提升了他们支持Android的热情,这是Android平台能够快速成熟、快速成长的源泉。价格方面一直是Android屡创销售记录的利器。Android智能手机涵盖各个价格段。ZDC最新统计数据显示,目前中国智能手机市场上,不同价格段产品中Android均有机型与之对应,能够最大限度的满足消费者的需求。1.1论文研究主要内容 在Android的应用开发中,手机防盗是一项新起的重要安全技术。相关数据标明,在全球智能手机使用量激增的当下,手机丢失率也在不断的攀升。在这个背景下,手机防盗已经不是我们遥不可及的念想,而是我们身边急切需要的工具。 在该软件中,利用到Android广播机制等相关技术,在用户首次运行软件的时候,用户需要设置用户名和密码,在确认正确之后,用户可以设置一个安全联系人的手机号码,点击开始防盗后,程序在后台监听手机开启,通过读取当下手机用户的SIM卡IMSI码来判断手机是否当前处于安全状态;如若手机遗失,在拾到手机者将自己的手机卡放入手机中时,软件检测到非本机SIM卡串号,便会由当前手机向机主紧急联系人号码发送一条信息,紧急联系人这端在接收到信息后会显示出当前手机的位置。如此,便有途径和希望能找回机主手机,将机主的损失降至为最低。此外,从手机用户的角度出发,避免出现用户操作失误或者不了解软件功能,特此在软件进入界面加入了用户帮助文档,详细的解释软件功能和操作方法,给用户贴心的感觉。1.2国内外研究现状Android现在的全球占有率为43%,Android的主要竞争对手是苹果公司的iOS以及RIM的BlackberryOS,在2011年第一季度,Android在全球的市场份额首次超过塞班系统,一跃成为全球第一。其令人嗔目结舌的增长速度已经让其他公司望尘莫及。美国一家为只能手机提供安全服务的公司发布了一份惊人的调研数据,该数据称“若丢失的手机无法找的话,2012年美国消费者在只能手机上的损失将会是300亿美元”。同时,在2011年,一共定位到900万部丢失的智能手机,相当于每3.5秒就有一部手机遗失。在国外针对手机丢失率居高不下的情况,一些国家已经出台了手机串号登记政策,在用户反馈手机不慎丢失之后,会立即停止相应串号的手机所有使用功能。根据不同的国情,我国尚且未启动手机用户串号登记的政策,毕竟是一个很庞大的工程,据统计,随着我国3G用户突破1亿,智能手机已经成为主导产业链的核心环节,2011年,中国智能手机销售量比2012年增加70%。2012年中国智能手机市场可能将增长到8000万部。近年来,国内的技术工作者也做了大量的手机防盗软件的开发与测试工作。在千讯北京信息咨询有限公司刚出版的2012中国防盗追踪手机行业发展研究报告中,很明确的指出当下针对手机丢失追踪找回方案实施的紧急性,以及中国软件技术工作者为此付出的努力。2012年1月5日,长虹集团在北京万达索菲特大饭店召开了以“2012智能手机新趋势长动力·云安全”为主题的新闻发布会。会议内容直指当下智能手机的两大瓶颈问题:手机续航与手机安全。相比之前,用户丢失手机的不知所措,现在我们有理由相信,在未来,技术和人文不断发展的同时,手机防盗技术已经能够给用户吃下一颗定心丸。大连东软信息学院毕业设计(论文)第2章关键技术介绍2.1Android开发技术简介2.1.1Android体系框架介绍Android是基于Linux开放性内核的手机操作系统,Android系统由操作系统、中间件、用户界面和应用软件组成。他采用软件堆层(SoftwareStack,又名软件叠层)的架构,主要氛围三部分。底层以Linux内核工作为基础,由C语言开发,只提供基本功能;中间层暴扣函数库Library和虚拟机VirtualMachine,由C++开发。最上层是各种应用软件,暴扣通话程序,短信程序等,应用软件则由各公司自行开发,以Java作为编写程序的一部分。Android的操作系统框架图如图2.1所示。图2.1Android系统框架图(1)Java开发方面Android支持使用Java作为编程语言来开发应用程序,而Android的Java开发方面从结构到功能,都有层出不切的变化。考虑到Java虚拟机的效率和资源占用,谷歌重新设计了Android的Java,一边能提高效率和减少资源占用。(2)C/C++开发方面早期的Android开发只支持Java作为编程语言开发应用程序,因而使得其他语言开发者只能望而却步。2010年4月,谷歌正式对开发者发布了AndroidNDK,NDK允许开发者使用C/C++作为编程语言来为Android开发应用程序。但是,当前版本的NDK在功能上有很多局限性,不过随着NDK不断的完善和发展,相信未来NDK可以做的更多更好。(3)应用程序早期的Android应用程序开发,通常通过AndroidSDK(Android软件开发包)下使用Java作为编程语言来开发应用程序,但通过不同的软件开发包,则使用的编程语言也不同。此外,谷歌公司还退出了GoogleAppInventor开发工具,该开发工具可以快速地构建应用程序,方便新手开发者。(4)安全权限机制Android本身是一个权限分立的操作系统。在这类操作系统中,每个应用都以唯一的一个系统识别身份运行(Linux用户ID与群组ID)。系统的各部分也分别使用各自独立的识别方式。Linux就是这样将应用与应用,应用与系统隔离开。Android安全架构的核心设计思想是,在默认设置下,所有应用都没有权限对其他应用、系统或用户进行较大影响的操作。这其中包括读写用户隐私数据(联系人或电子邮件),读写其他应用文件,访问网络或阻止设备待机等。一款应用应该根据自身提供的功能,要求合理的权限。用户也可以分析一款应用所需权限,从而简单判定这款应用是否安全。如一款应用是不带广告的单机版,也没有任何附加的内容需要下载,那么它要求访问网络的权限就比较可疑。(5)内核Android采用Linux2.6作为内核,运行在其之上,中间加上一个Dalvik的Java虚拟机,表面上是Android运行库,Android对Linux内核做了修改,以适应其在移动设备上的应用。2.1.2Android四大组件Android应用程序由四个重要组件构成,其分别为:活动(Activity)、服务(Service)、广播接收器(BroadcastReceiver)、内容提供商(ContentProvider)。其中,Activity用于表现功能;Service是后台服务,不提供界面呈现;BroadcastReceiver用于接受广播;ContentProvider是支持在多个应用中存储和读取数据,相当于数据库。ActivityAndroid中,Activity是所有程序的根本,所有程序都在Activity中运行,Activity可以算是开发者遇到的最频繁,也是Android当中最基本的模块之一。在Android的程序当中,Activity一般代表手机屏幕的一屏。是用户与手机交互最真切的展示,在Activity当中可以添加一些Button、Checkbox等控件,点击控件或点击功能按钮的进入、返回均是各个Activity之间的跳转。当前的每一个屏幕保存在堆栈中。Activity是由Android系统进行维护的,它也有自己的生命周期,即它的一个产生、运行、销毁的一个周期,对于Activity,关键是其生命周期的把握。Activity的生命周期执行图,如图2.2所示。图2.2Activity的生命周期执行图ServiceService是Android系统中的一种组件,它跟Activity的级别差不多,但是他不能自己运行,只能后台运行,并且可以和其他组件进行交互。Service是没有界面的长生命周期的代码。Service是一种程序,它可以运行很长时间,但是它却没有用户界面。Service的生命周期,如图2.3所示。图2.3Service的生命周期(3)BroadcastReceiver在Android中,Broadcast是一种广泛运用的在应用程序之间传输信息的机制。而BroadcastReceiver是对发送出来的Broadcast进行过滤接受并响应的一类组件。可以使用BroadcastReceiver来让应用对一个外部的事件做出响应。(4)ContentProvider在Android中,对数据的保护是很严密的,除了放在SD卡中的数据,一个应用所持有的数据库、文件、等等内容,都是不允许其他直接访问的。应用想对外提供的数据,可以通过派生ContentProvider类,封装成一枚ContentProvider,每个ContentProvider都用一个uri作为独立的标识,ContentProvider屏蔽了内部数据的存储细节,向外提供了上述统一的接口模型,这样的抽象层次,大大简化了上层应用的书写,也对数据的整合提供了更方便的途径。在Android中,ontentResolver是用来发起ContentProvider的定位和访问的。不过它仅提供了同步访问的ContentProvider的接口。但通常,ContentProvider需要访问的可能是数据库等大数据源,效率上不足够快,会导致调用线程的拥塞。因此Android提供了一个AsyncQueryHandler,帮助进行异步访问ContentProvider。2.2Android开发平台之Eclipse介绍Eclipse是一种基于Java的可扩展开源开发平台。就其自身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse附带了一个标准的插件集,包括为人熟知的Java开发工具(JavaDevelopmentTools,JDT)。虽然大多数用户很乐于将Eclipse当作Java集成开发环境(IDE)来使用,但Eclipse的目标却不仅限于此。Eclipse还包括插件开发环境(Plug-inDevelopmentEnvironment,PDE),这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许他们构建与Eclipse环境无缝集成的工具。Eclipse是开源的,所谓开源软件是通过许可证发型以确保授予用户某些权利的软件。最明显的一点就是源代码必须可用,从而用户可以自由地修改和重新发布软件。开放软件计划(OpenSoftwareInitiative)是一家非营利机构,它明确定义了开放源码的含义及满足其标准的认证许可证。Eclipse是在OSI认可的Eclipse公共许可证(EPL)1.0版之下被授予许可证的,EPL旨在促进Eclipse的商业化使用而同时又能对开源作者保持公平。尽管大多数开发人员不会使用Eclipse来开发插件,或基于Eclipse创建新产品,但是Eclipse的开源性质所意味的并不只是使得Eclipse免费可用(尽管便于商业化的许可证意味着插件可能要花钱)。开放源码鼓励创新,并激励开发人员为公共开放源码库贡献代码。其中的原因很多,不过最本质的原因是为这个项目作贡献的开发人员越多,这个项目就会变得对每个人都越宝贵。随着此项目变得日益有用,更多的开发人员将会使用它,并围绕它形成一个社区,就像那些围绕Apache和Linux形成的社区一样。第3章系统需求分析3.1构架概述3.1.1功能构架根据需求调研结果确定本系统主要包括功能模块有:用户帮助模块、短信接收模块、防盗模块、用户设置模块以及定位模块,如图3.1所示。用户用户登陆界面主界面主界面用户帮助模块定位模块用户设置模块短信接收模块防盗模块用户帮助模块定位模块用户设置模块短信接收模块防盗模块图3.1系统功能结构图3.1.2模块需求描述(1)用户帮助模块在此模块下,用户使用文档的形式浏览该软件的介绍部分、功能介绍部分、操作明细部分,让用户在最短的时间内了解软件的功能和实用性,最大化了用户使用和体验指数。(2)短信接收模块该软件的实现目的即是短信接受,所以短信模块是本软件的一个基础模块,在开启防盗功能后,更换SIM卡后安全联系人接收短信,所以,实现预想功能的前提便是短信的接收。(3)防盗模块本软件核心部分即是防盗模块的实现,在该模块下,用户第一次运行软件进行用户名和密码还有安全联系人等一系列设置成功后,软件通过开机自检,发现与设定的用户手机串号不一致时,启动防盗模块,为下一步功能实现做准备。(4)用户设置模块用户设置模块是根据用户需求分析后添加的一个模块,在用户自身需要更换SIM卡的时候,为避免出现由于是机主本身操作,而启动防盗模块;另外,在用户需要修改密码的时候,该模块也为用户设定了修改密码的功能,用户可以随时更改首次设置的密码。(5)定位模块在以上模块相互实现的前提下,定位模块是本软件的最终目标,在检测到当前手机串号非机主时,启动防盗模块,之后便是短信模块的启动,由当前手机号码给安全联系人发送当前手机的位置。为了实现对丢失手机的找回,定位模块可以帮助机主以短信呈现定位功能的直观方式第一时间找寻手机当前位置,使得防盗找回的思想付诸于实现。3.2系统开发环境硬件环境:PC机。软件环境:Windows7,EclipseVersion:IndigoServiceRelease1,AndroidSDK。3.3系统任务的可行性分析3.3.1技术可行性Android操作系统被Google收购以后,背靠Google这只行业巨头,经过不断的整合测试,如今已经趋于稳定。其底层编程语言为非常成熟的C/C++,并且采用同样成熟的Java开发语言作为其应用层的编程语言,内核为Linux。在开发平台方面,功能强大的Eclipse完美的保证了程序的已写已读性。3.3.2市场可行性分析2012年2月末公布的一段用户数据显示:中国的手机用户已经达到10亿规模,而且智能手机已经占据中国手机市场的半壁江山。与此同时,手机被盗、手机丢失等事件在我们身边已经司空见惯,在中国这个大市场下,遗失手机的数目着实令人嗔目结舌。现如今市场上类似的手机防盗软件也有很多,但大半是仅是通过指令来远程控制遗失手机,诸如:自动关机、清除号码簿等,但本软件真正能在定位后使得找回手机成为可能。在庞大的中国手机用户的背景下,该软件从用户自身利益角度出发,实用性强,操作简单,有很强的市场推广性。3.3.3经济可行性分析现在,随着智能手机市场的不断规划,手机应用的利润也不断提高。首先是开发者对市场分析之后做出相应的应用程序,其次是各个手机平台的广告利润也在其中,更重要的是消费者对程序员一种态度的转变。另外,在开发阶段的费用方面,由于本软件功能简捷,所以在开发部分不需要投入很多人力,节省了很多成本;同时,Android的开源性也为该软件的开发提供了很多资源,所以在经济可行性方面,本软件能做到节约最大的成本,提供最好的服务,得到最丰厚的回报。 第4章系统设计4.1设计指导思想和原则4.1.1指导思想该软件面向Android智能手机用户,在经过初期对软件的大概分析后,主要针对短信发送和接收、广播机制以及读取手机SIM卡串号进行重点研究。其中,广播机制的开机自动运行起到很关键的作用。另外,在定位部分运用到GPS模块进行操作,短信接受后的定位功能是本软件的实现目标。从用户的角度出发,加入用户帮助文档,能够让用户在短时间内了解软件并能熟练操作,在设计环节,尽量使界面美观,操作简便易行,让用户能在体验软件功能的前提下感受到开发者的态度。4.1.2软件设计原则本身作为手机用户,使用软件有不同的需求,在经过调研之后,为满足用户的实际需求,从软件的操作性和实用性入手,总结出以下设计原则:(1)界面设计简易原则:为了让用户能高效的利用软件,避免给用户造成华而不实的感觉,故在界面设计上,保持简洁直观的特点,以便能让使用者更高效的利用软件;(2)操作简易原则:本软件突出的是功能模块的实现,所以在操作上尽量使其简单易行,能让用户在了解软件功能后,快速正确的使用本软件;(3)代码简化原则:由于技术本身的源代码开放性,故在代码编写部分尽量使其简单易懂,格式工整,并在主要实现模块上添加注释,以便日后共享源码的时候让编程员尽快了解代码部分的设计结构;(4)稳定测试原则:由于该软件最后要安装到手机中进行操作,所以,在设计完成后移植到手机上进行测试,并在多次模拟下,处理运行可能造成的各种问题,以便使软件发布后,用户体验最完善的功能。4.2构架概述本软件在点击进入主界面后有两个功能按钮,分别为“用户登录”和“帮助文档”,在点击进入“用户登录”后,通过输入用户名和密码进行登录,登陆成功以后,进入防盗界面,在输入栏内输入安全联系人号码,以便在防盗阶段能够顺利接受短信,在设置安全联系人成功后,点击“开始防盗”,程序运行,防盗功能开启。在用户需要修改密码时,可通过点击“修改密码”按钮进行操作,修改密码界面和用户登录界面类似,在用户名输入正确的前提下,输入新密码,修改成功后点击“OK”按钮,则修改成功,返回即可重复之前防盗操作;在短信接收部分使用真机演示,定位呈现在短信内容上。4.3系统界面原型设计4.3.1主界面原型主界面的设计思路是以最简单明了的形式呈现给用户,进入主界面,内置两个Button按钮,分别为“用户登录”和“说明文档”,用户根据需要点击使用各个功能。程序主界面原型图如图4.1所示。图4.1手机防盗系统主界面原型图4.3.2用户说明文档界面原型图在用户点击进入“说明文档”后,呈现详细的软件说明文档,有效的帮助用户快速了解软件功能。用户说明文档界面原型图如图4.2所示。图4.2说明文档界面原型图4.3.2用户登录界面原型图在用户点击“用户登录”按钮后,进入登录界面,在首次进入时输入用户名及密码,设置成功后点击“OK”按钮,设置成功;点击“CANCLE”则退出登录。用户登录界面原型图如图4.3所示。图4.3用户登录界面原型图4.3.3手机防盗界面原型图在成功设置用户名及密码后,点击“OK”进入到防盗界面,在该界面下,用户可以在输入框中设置一个安全联系人的号码,用为以后启动防盗后接受短信的用户,在设置成功后点击“开始防盗”,则程序启动防盗模块。此界面下,还提供了一个“修改密码”的Button按钮,为用户随时修改密码提供方面。手机防盗界面原型图如图4.4所示。图4.4手机防盗界面原型图4.3.3停止手机防盗界面原型图在图4.4点击“开始防盗”后,“开始防盗”按钮变更为“停止防盗”按钮,用户可以根据自身需要选择停止防盗,点击“停止防盗”按钮,程序停止,按钮重新变更会之前的“开始防盗”。停止手机防盗界面原型图如图4.5所示。图4.5停止手机防盗界面原型图4.3.3修改密码界面原型图软件提供给用户修改密码的功能,在用户忘记密码或者是密码使用时间过长想要修改的时候,可通过点击“修改密码”按钮进行操作,在正确输入用户名和密码后点击“OK”按钮修改成功;点击“CANCLE”按钮则退出修改。修改密码界面原型图如图4.6所示。图4.6修改密码界面原型图4.4数据库系统结构设计数据库技术在如今十分重要,在庞杂的信息时代,个人信息、公司信息、客户信息密密麻麻的堆积在每个人面前,数据库技术的出现,大大的节省了工作人员处理数据时的时间,最主要的是简单方便的操作风格收到很多人的喜欢。数据库类似一个大型的数据集合仓库,在其中包含很多可共享的、有组织的数据。在数据库中根据工作人员的需要进行增删改查等操作,将数据集中处理,让工作更高效。数据库系统作为数据密集型应用的核心,从数据库管理系统的角度去看,数据库系统体系结构采用的是三级模式;从用户的角度出发,数据库系统体系结构可分为集中式结构、分布式结构、客户/服务器结构和浏览器/服务器结构,此为数据库系统外部的体系结构。本软件在输入用户名、设置密码和安全联系人手机号码阶段应用到数据库相关知识,为软件的功能实现提供了数据保障。软件在结合数据库技术更好的帮助软件实现各项操作,在本软件中应用到的数据库有登陆阶段的用户名、密码,在登录成功后,在输入安全联系人号码阶段也需要数据库。用户登录信息如表4.1所示。表4.1用户登录信息表字段名注释类型非空备注AdminName用户名TEXT√设置用户名Passwd密码TEXT√设置密码PhoneNum手机号int√输入手机号大连东软信息学院毕业设计(论文)第5章系统实现5.1配置Android环境首先确认安装JRE,即为Java运行环境,因为JDK中包含有JRE,所以只需要下载JDK即可,JDK下载地址:/javase/downloads/index.jsp。安装JDK,选择Windows平台和Multi-language语言,在安装成功后需要在PC机中配置环境变量;安装Eclipse时只需解压到相应的目录中即可,首次启动Eclipse时会让用户选择工作目录;接下来安装AndroidSDK,选择Windows版本的AndroidSDK,AndroidSDK只需要解压,不需要安装,启动Eclipse,选择Windows-Preferences,打开Eclipse配置界面输入SDK保存路径,点击“Apply”加载即可;安装ADT插件,下载ADT后启动Eclipse,选择Help-InstallNewSoftware打开插件的安装界面,手动将ADT载入环境中即可。在Eclipse设置方面必须添加Eclipse插件才可以,打开Eclipse后,点击菜单栏的help-installnewsoftware,然后点击Add会弹出一个AddSite窗口,在Name输入一个自己取的名字,在location中载入插件位置即可。5.2程序主要界面实现按照最初对软件主界面的构想,在程序中的layout文件中的Main.xml中进行主界面的编译,主界面截图为中兴手机U880运行的真实界面,与原型图一致。如图5.1所示。图5.1主界面截图代码重点函数分析:onCreate函数,在view类中,create是用来生成一个窗口的子窗口,create本身是一个虚函数,由框架调用实现生成窗口的功能。需要注意的是,onCreate()只是在串口显示的时候设置窗口的属性以及风格、位置等相关结构,产生窗口的功能是由create实现,create()负责注册并产生一个窗口。实现代码部分如下:publicvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.login); butlogin=(Button)findViewById(R.id.button1); butfile=(Button)findViewById(R.id.button2); butfile.setOnClickListener(newView.OnClickListener(){ publicvoidonClick(Viewv){ Intentintent=newIntent(LoginActivity.this,lxn.security.activity.FileActivity.class); startActivity(intent); } }); butlogin.setOnClickListener(newView.OnClickListener(){ publicvoidonClick(Viewv){ Intentintent=newIntent(LoginActivity.this,lxn.security.activity.MainActivity.class); startActivity(intent); } }); }5.3说明文档界面实现在说明文档实现阶段,通过类文件FileActivity的引用,再在values文件夹下的strings.xml文件中写入对应文档内容。说明文档功能实现如图5.2所示。图5.2说明文档界面截图代码重点函数分析:Extends是继承父类的函数,只要类不是声明成final或者类定义成abstract的就可以继承。功能实现代码如下:publicclassFileActivityextendsActivity{ protectedvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.file); }}5.4用户登录界面实现在用户登录的实现上,使用onClick函数,在判断阶段,使用if-else进行判断;在输入阶段提示用户名或密码不能为空。用户登录界面截图如图5.3所示。图5.3用户登录界面截图代码重点函数分析:onClick是表示控件被点击时执行的函数,响应点击触发控件。功能实现代码如下:publicvoidonClick(Viewv){ //用户名 Stringusername=etusername.getText().toString(); //密码 Stringpassword=etpassword.getText().toString(); if("".equals(username.trim())||"".equals(password.trim())){ Toast.makeText(MainActivity.this,"用户名或密码不能为空",4).show(); return; } Stringsaveusername=sp.getString("username",""); Stringsavepassword=sp.getString("password",""); if(username.trim().equals(saveusername) &&password.trim().equals(savepassword)){ init(); showDialog.dismiss(); }else{ Toast.makeText(MainActivity.this,"用户名或密码错误",4).show(); return; } } }); butcancle.setOnClickListener(newView.OnClickListener(){ publicvoidonClick(Viewv){ MainActivity.this.finish(); } }); builder.setView(view); builder.setTitle("用户登录"); showDialog=builder.create(); showDialog.show(); }5.5开启防盗界面实现在防盗界面的实现中,使用etsafenumber函数获取手机信息,在点击“开启防盗”和“停止防盗”的Button按钮中intent变更,点击“开启防盗”后按钮变为“停止防盗”,在点击“停止防盗”按钮后,按钮变更为“开启防盗”。开启防盗界面截图如图5.4所示,停止防盗界面截图如图5.5所示。图5.4开启防盗界面截图图5.5停止防盗界面截图代码实现部分如下:publicvoidinit(){ setContentView(R.layout.main); etsafenumber=(EditText)this.findViewById(R.id.safenumber); butstart=(Button)this.findViewById(R.id.start); butmodify=(Button)this.findViewById(R.id.modify); Stringsavenumber=sp.getString("safenumber",""); etsafenumber.setText(savenumber); isStart=sp.getBoolean("start",false); if(isStart){ etsafenumber.setEnabled(false); butmodify.setEnabled(false); butstart.setText("停止防盗"); StringsubScriberId=tm.getSubscriberId(); System.out.println("当前IMIS标示="+subScriberId); } butstart.setOnClickListener(newView.OnClickListener(){ publicvoidonClick(Viewv){ if(isStart){ Editoreditor=sp.edit(); editor.putBoolean("strt",false); etsafenumber.setEnabled(true); butmodify.setEnabled(true); isStart=false; butstart.setText("开始防盗"); mit(); StringsubScriberId=tm.getSubscriberId(); System.out.println("当前IMIS标示="+subScriberId); }else{ StringphoneNumber=tm.getLine1Number(); StringsubScriberId=tm.getSubscriberId(); System.out.println("当前IMIS标示="+subScriberId); Stringsafenumber=etsafenumber.getText().toString(); };5.6修改密码界面实现该功能与登录功能很相似,在实现上,也是通过跳转弹出窗口Activity的方式来方便用户进行登录修改密码。程序截图如图5.6所示。图5.6修改密码界面截图代码实现部分如下:publicvoidonClick(Viewv){ Stringusername=etusername.getText().toString(); Stringpassword=etpassword.getText().toString(); if("".equals(username.trim())||"".equals(password.trim())){ Toast.makeText(MainActivity.this,"用户名或密码不能为空",4).show(); return; } Editoreditor=sp.edit(); editor.putString("username",username); editor.putString("password",password); editor.putBoolean("first",false); mit(); setPasswordDialog.dismiss(); init(); } }); butcancle.setOnClickListener(newView.OnClickListener(){ publicvoidonClick(Viewv){ if(isFirst){ MainActivity.this.finish(); }else{ setPasswordDialog.dismiss(); } } };5.7定位短信界面实现在此部分使用GPS定位功能,在短信接受端可见对方手机号码、对方手机IMIS码、SIM卡更换信息以及纬度值。短信截图如图5.7所示。图5.7短信定位界面截图实现功能代码如下:privateDouble[]updateToNewLocation(Locationlocation,Double[]gps){ gps=newDouble[2];if(location!=null){doublelatitude=location.getLatitude();doublelongitude=location.getLongitude();gps[0]=latitude;gps[1]=longitude;}else{ gps[0]=0.0;gps[1]=0.0;}System.out.println(gps[0]+""+gps[1]);returngps;}以上所述便是本软件开发的核心部分,其中截图对应的代码部分为主要功能代码,至此,系统实现部分已经完全结束,功能实现情况良好,运行正常。大连东软信息学院毕业设计(论文)第6章系统测试系统测试是软件发布很重要的一环,在测试中找出软件的不足,从而使软件更加完善。通过在编译环境下的运行平台开启模拟器来浏览软件各项功能实现情况,在模拟器上运行检测效果良好后,将软件移植到真机中进行测试试验,在使用过程中及时发现不足之处,尽快修改和完善。本文中的防盗软件主要功能在于实现用户手机丢失提醒以及帮助用户找回丢失的手机。软件在安插新SIM卡时会将当前状况,即手机插入了陌生SIM卡的信息发送到用户的安全手机中。安全手机为用户指定的其他手机号码,在用户手机丢失时候能够通过安全手机接收短信的方式找回已经丢失的手机,在短信显示端,可实现定位功能,将手机当前位置以经纬度的形式呈现在短信上,让找回遗失手机变成可能。本章主要是开发者通过真机的测试得出结论,软件测试使用机型为中兴U880,手机功能完全能适应软件测试各项功能,下面是各个阶段的测试情况以及操作介绍。6.1各界面测试详情6.1.1主界面测试方案:打开软件后,软件界面能够完整流畅的显示给用户,帮助用户操作。测试用例:打开软件后,测试主界面。点击并进入主界面并查看界面运行情况。测试重点:画面正常,按钮跳转功能实现。真机测试结果:效果良好,点击软件能迅速转入主界面。6.1.2说明文档测试方案:点击说明文档后进入该界面。测试用例:点击进入界面后,显示文本形式的说明文档,查看其运行情况。测试重点:文本是否显示正常,下拉条可用。真机测试结果:文本显示正常,下拉条操作正常。6.1.3登陆界面测试方案:点击用户登录后进入登录界面,在输入框输入用户名及密码。测试用例:跳转成功后,查看输入界面运行情况。测试重点:输入过程是否正常运转,输入成功后点击“OK”按钮完成设置。真机测试结果:输入界面流畅,点击设置完成跳转正常。6.1.4防盗界面测试方案:在上方输入框中设置安全联系人手机号码,并且手机号为正常可用号码。测试用例:正确输入安全联系人号码防盗开启。测试重点:设置号码成功或点击“开始防盗”,功能开启。真机测试结果:在点击“开启防盗”后,程序开启防盗模块,运行正常。6.1.5修改密码界面测试方案:点击“修改密码”按钮,进入修改密码界面。测试用例:为避免他人刻意修改软件中的用户名和密码,在修改密码过程中,软件检测所输入用户名正确与否,在正确情况下可修改密码;如若不正确,则不可进行修改操作。测试重点:在输入错误用户名情况下,是否也可修改密码。真机测试结果:只有在正确输入用户名的前提下才可以修改密码,防止他人随意修改密码。6.1.6SIM卡更换短信接收测试方案:在更换SIM卡后,安全联系人接受短信情况是否正常。测试用例:在测试阶段,先设置一个安全联系人,再更换SIM卡,测试短信发送情况。测试重点:短信接受是否正常。真机测试结果:在更换SIM卡后开机5-10分钟内,安全联系人收到短信,测试成功。6.1.7定位测试方案:短信显示的内容呈现当前手机位置功能。测试用例:成功接收短信后,打开查看,短信显示手机当前位置。测试重点:开启GPS功能,短信定位功能实现。真机测试结果:经纬度正常。6.1.8测试结论软件测试机型相关数据如下:型号:ZTE-TU880。系统版本号:2.2.2。CPU核心:单核心。CPU型号:Marvell88SV331xrev0(v51)。运行内存(RAM)总空间:483.3MB。手机内存(ROM)总空间:216.0MB。从上述数据可见,中低端手机运行情况尚且良好,所以我们暂此认为本软件在绝大部分的Android手机上的运行情况均为正常。经过一周左右的测试使用,基本排除有非正常情况导致软件崩溃情况,并且软件apk安装包很小,没有占去手机多少的内存空间。综上所述,本软件在实际应用当中也有很出色的表现,突出了简洁使用的特点,有很强的市场推广性。6.2操作测试详情6.2.1主界面操作界面形式:进入主界面呈现的是两个Button按钮,分别为用户登录和说明文档。点击操作:点击对应Button按钮进入不同界面,点击“用户登录”跳转到用户登录界面;点击“说明文档”进入软件介绍界面;如需退出按返回键即可。6.2.2说明文档界面操作界面形式:在点击说明文档按钮后,转入说明文档界面,在该界面下以文档的形式浏览软件说明各项内容,并有下拉条,方便大量文字显示拥挤的状况。点击操作:进入该界面后,文本浏览时可通过按住屏幕下拉上拉来浏览全部内容。6.2.3登陆界面操作界面形式:在点击用户登录按钮后跳转进入登录界面,在此界面下有一个设置用户名和密码的对话框,并且在下面有两个Button按钮,分别为OK和CANCLE。点击操作:点击用户名输入框,弹出键盘,用户可进行输入操作,密码输入框的操作与用户名输入框一致,在用户名和密码设置成功后点击下方两个Button按钮,点击OK按钮则跳转下一个界面;点击CANCLE按钮则退出登陆界面。6.2.4防盗界面操作界面形式:在成功设置用户名和密码并点击OK按钮后,跳转到防盗界面,在该界面下,在最上方有一个输入框,用来设置安全联系人号码,在输入框下方有两个Button按钮,分别为开启防盗和修改密码。点击操作:点击安全联系人的输入框,弹出键盘进行输入手机号码,在成功设置后,点击下方按钮的开启防盗后,防盗功能开启,并且Button按钮变为停止防盗;在点击修改密码按钮后,跳转至修改用户名和密码的界面。6.2.5修改密码界面操作界面形式:在点击修改密码成功跳转后进入修改密码界面,此界面下形式与登陆界面形式相同,两个输入框分别为设置用户名和设置密码,在下方有两个Button按钮,分别为OK和CANCLE。点击操作:点击用户名输入框,弹出键盘,密码输入框与用户名输入框一致,在正确修改用户名密码之后点击OK修改成功;点击CANCLE退出修改。6.3测试可能出现的不足由于测试阶段人力、成本有限,本测试仅使用中兴手机U880进行真机测试,在短信接收部分使用的是非安卓智能手机进行测试,目的是为以后的市场推广做准备,用户在设置安全联系人时候不必非得设置安卓智能手机的用户设置,测试说明短信能够正常接收,并且经纬度各方面显示正常,表现情况良好,可能在部分手机操作会出现问题,在之后的推广中寻找不足之处,通过不同的情况进行对应的版本修改完善。大连东软信息学院毕业设计(论文)第7章结论在当前的手机市场中,Android手机占据着绝对的数量优势。这不仅仅代表着Android手机的市场
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年保险合同:建筑工程一切险及第三者责任险
- 2024年家庭暖气施工质量监管合同
- 2024年中国淘宝全球物流跨境合作协议版B版
- 2024年北京车辆指标租借协议详版版B版
- 2024年家装实木地板销售协议版
- 2024专项建设工程监测服务合作合同版B版
- 2024商业用地出租协议及附加条款版B版
- 2024年专业大理石表面翻新服务合同版
- 2024年室内装修标准施工协议模板版B版
- 2024厦门二手车交易合规协议样本
- CJJT135-2009 透水水泥混凝土路面技术规程
- CJ-T189-2007钢丝网骨架塑料(聚乙烯)复合管材及管件
- JT-T-1153-2017混凝土钢筋位置测定仪标准器
- 科技创新项目结题报告
- 2024年大学心理健康教育考试题库及答案(含各题型)
- (高清版)JTGT 3650-01-2022 公路桥梁施工监控技术规程
- DZ∕T 0213-2020 矿产地质勘查规范 石灰岩、水泥配料类(正式版)
- 人工智能基础与应用(第2版)全套教学课件
- SMD-PFMEA模板中英文版
- 2024年广东广州市港务局直属事业单位招聘工作人员9人公开引进高层次人才和急需紧缺人才笔试参考题库(共500题)答案详解版
- 2024年《宪法》知识竞赛必背100题题库带解析附答案(完整版)
评论
0/150
提交评论