ImageVerifierCode 换一换
格式:DOCX , 页数:31 ,大小:515.43KB ,
资源ID:9160517      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9160517.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(最新版基于Android平台的无间盗防盗软件地图追踪及远程指令毕业设计.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

最新版基于Android平台的无间盗防盗软件地图追踪及远程指令毕业设计.docx

1、最新版基于Android平台的无间盗防盗软件地图追踪及远程指令毕业设计本 科 毕 业 设 计 题目:基于Android平台的“无间盗”防盗软件 地图追踪及远程指令 学生 : 学 号:系 别:专业班级 指导教师 及职称:起止时间:摘 要:随着Android系统的发展和智能手机逐渐平民化,其普及率呈指数增长。Android手机市场规模的扩大所引起的手机安全和防盗的问题也愈发突出。本论文在基于Andorid平台上,运用Android短信、广播等通信机制,配合第三方地图服务商提供的地图API对智能手机进行远程指令控制和定位丢失的手机,为找到手机增加可能性,并保护失主隐私。关键词: 远程指令追踪;And

2、roid防盗;XX地图;Android广播Abstract:With the increasing popularity of Android system development and smart phones. The Android phone expansion of market scale of mobile security and anti-theft problems become more prominent. This thesis is based on Andorid platform, use Android SMS, broadcasting and other

3、 communication mechanisms, with the Maps API provided by a third-party map service provider smart phone remote command control and positioning lost phone, to increase the possibility to find the phone, and the protection of the owner privacy. Keywords: The remote command tracking; Android anti-theft

4、; Baidu map; Android broadcast目 录1. 绪论 11.1. 研究意义与背景 11.2. 课题的目的及其意义 11.3. 本文的主要研究工作 12. AndroidXX地图API 22.1. 手机地图服务 22.2. 定位技术 22.2.1. 基于GSM蜂窝基站定位 22.2.2. 基于GPS卫星定位 22.2.3. 基于WIFI热点定位 32.3. XX地图API简介 33. 远程指令控制功能 53.1. 基本原理及设计 53.2. 底层平台导入和开发步骤 63.2.1. 申请密钥 63.2.2. 导入.jar和.so文件 63.2.3. 初始化声明 63.3.

5、模块框架图 73.4. 模块详细设计 83.4.1. 指令接收器的设计与实现 83.4.2. 指令业务分发器的设计与实现 93.4.3. 定位器的设计与实现 113.4.4. 报警响铃器的设计与实现 123.4.5. 手持设备权限管理器的设计与实现 143.4.6. SIM卡更换通知功能的设计与实现 154. 地图追踪功能 164.1. 功能简介 164.2. 功能详细设计 165. 帮助与升级功能 195.1. 功能简介 195.2. 帮助功能模块 195.3. 版本升级功能 196. 软件测试与使用 206.1. 功能操作 206.2. 测试用例 216.3. 测试结果与发现 217. 总

6、结 25参考文献 26致 谢 261. 绪论1.1. 研究意义与背景随着智能移动终端发展和普及,人们试图让交互的应用伴随移动的用户在对应的空间中迁移。从全球的发展趋势来看,更高水平的基于位置服务(LBS)、基于空间定位等功能是新一代移动网络应该具备的,是网络业务支撑能力的一种体现,我国移动运营商更已将其视为形象工程。LBS依赖于高精度定位技术的发展,随着定位技术的发展和人们网络社交心理、行为的成熟;LBS将更加实用化,所衍生出的服务和产业链将更加丰富和广阔,为用户提供随时随身的服务。1.2. 课题的目的及其意义基于地图位置服务发展迅速,对人机界面与地理信息系统服务整合具有重要的理论和现实意义。

7、本课题在此基础上利用Androidd的短信通信机制、广播机制以及第三方地图软件提供商的API,实现并研究手机防盗在移动技术上的新应用。将手机防盗技术应用于日常生活之中,对降低手机及其资料被盗的风险和减少个人的财产损失有着重大意义和应用价值。 通过此课题,能够培养学生动手能力,增强个人思维模式,锻炼软件开发中遇到问题的调试能力,进而加强专业技术。1.3. 本文的主要研究工作本文主要研究的是基于Android系统短信通知机制的远程追踪控制指令,以及第三方地图API的使用,通过两者的配合和应用来巩固手机防盗的防线。2. AndroidXX地图API 2.1. 手机地图服务手机地图服务是指在手机上利用

8、GPS或者网络实现精确定位,通过使用WAP方式或客户端方式,得到相关位置信息的业务。为用户提供了一种便捷实用的掌上地图,通过手机屏幕,用户可以查询城市信息、查找自己的位置、查找道路信息。它以矢量地图、卫星地图、混合地图3种服务模式向全球提供地图搜索和逐级缩放功能的地图服务,让全球用户体验到了新的地图服务模式。目前,主流的地图服务在国外有Google Maps,Yahoo地图服务,Virtual Earth服务三大服务,而国内则有搜狐旗下的搜狗、XX、高德等主要的地图服务。本软件之所以选用XX地图服务是因为其功能与国外地图相比更具本地特色,也更加实用,其位置相对与国内而言也更为精准。2.2. 定

9、位技术移动终端的定位是通过检测移动终端和基站之间传播信号的特征参数来获得其几何位置,在显示应用中,主要有三种常用的定位方式:2.2.1. 基于GSM蜂窝基站定位把移动电话的服务区别分为一个个正六边形的子区,每个小区设一个基站。形成了形状酷似“蜂窝”的结构1,移动电话测量不同基站的下行导频信号,得到不同基站下行导频的TOA(Time of Arrival,到达时刻)或TDOA(Time Difference of Arrivalm,到达时间差),根据该测量结果并结合基站的坐标,一般采用三角公式估计算法,就能够计算出移动电话的位置。实际的位置估计算法需要考虑多基站(3个或3个以上)定位的情况,因此

10、算法要复杂很多。一般而言,移动台测量的基站数目越多,测量精度越高,定位性能改善越明显。2.2.2. 基于GPS卫星定位 GPS的空间部分是由24颗卫星组成(其中有21颗工作卫星,3颗备用卫星)。在空旷地带且无阻挡的前提下,GPS定位技术的定位精度可达15米左右。但是,在很多情况下,GPS接收机不能够捕获足够多的GPS卫星信号,定位精度将会大大的降低,甚至不能定位(如室内)。GPS系统主要由三大部分组成:GPS卫星星座(空间部分)、地面监控系统(控制部分)和GPS信号接收机(用户部分)。GPS的定位原理就是根据高速运动的卫星瞬间位置作为已知的数据,采用空间距离后方交会的方法,确定待测点的位置2。

11、 我们通常所说的GPS往往仅只用户设备部分,它通过接受天空不同位置的三颗以上的卫星信号,手机捕获到跟踪的卫星信号后,配合地面接收天线就可按定位解算方法进行定位计算,计算出用户所在地理位置的经纬度、高度、速度、时间等信息。简单来说是利用了数学上三条线确定一个空间点的原理。虽然GPS定位最为精准,但其缺点是耗电、定位慢并且无法室内定位。2.2.3. 基于WIFI热点定位基于WIFI热点定位的原理跟GSM基站定位的原理差不多,前提是我们必须拿到WIFI路由器的SSID和信号强度。当然,我们并不需要真正连接上指定的WIFI路由器,只需要探测到有WIFI存在即可。 定位端只要侦听一下附近都有哪些热点,检

12、测一下每个热点的信号强弱,然后把这些信息发送给Skyhook的服务器。服务器根据这些信息,查询每个热点在数据库里记录的坐标,进行运算,就能知道客户端的具体位置了,再把坐标告诉客户端。可以想想,只要收到的AP信号越多,定位就会越准。2.3. XX地图API简介XX地图移动版API(Android)是一套基于Android 1.5及以上设备的应用程序接口,通过该接口,您可以轻松访问XX服务和数据,构建功能丰富、交互性强的地图应用程序3。XX地图移动版API不仅包含构建地图的基本接口,还提供了诸如地图定位、本地搜索、路线规划等数据服务,你可以根据自己的需要进行选择。XX地图API将复杂的底层逻辑进行

13、封装,以一种便于开发者理解的方式提供。开发者只需要按照API文档的要求进行注册即可使用,客户端不需要安装任何软件、控件或地图,所有运算都会在XX公司的服务器中运行,由API 进行组织显示、分级缩放和漫游。使用者只需要通过其 API,利用 Android开发包就可以将XX地图服务应用到自己的软件中。其中客户端主要完成地图的加载、地图浏览和查询功能,它的设计重点是地图浏览和查询界面,以及将用户的访问和查询请求打包发送给服务器9。应用服务器方面则负责处理用户的访问和查询请求,数据服务器则用于存取各类空间数据和属性信息,采用 SQL Server 数据库存取表格,并在接到Query查询指令后执行相应的

14、操作9。系统体系结构如运行如下图所示。 图2-1 地图服务原理图3. 远程指令控制功能3.1. 基本原理及设计本软件的远程指令控制功能本质上是使用了Android系统的短信收发和系统的广播机制再加上自编的指令编码实现对丢失手机的功能控制,我们把它定义为本软件的第二道防线。基于这道防线,我们可以通过安全手机向丢失的手机进行远程控制响铃、PIN码锁屏、远程定位、获取新SIM卡号码和格式化丢失手机SD卡等功能。首先,需要为主机设置安全密码和一个安全手机号码,并对这两个数据保存到系统的配置文件。在这里使用到的是Android数据持久化的一种做法:SharePreference:SharePrefere

15、nce用来存储和检索一些关键变量的内容,这些内容常驻于手机xml文件之中,它是使用键值对的方式来存取文件中的数据的4。Android提供了一个SmsManager.class让应用程序拥有完整的权限来进入SMS短信的管理,自从Android 1.5版本之后,SmsManager信息管理器可以支持GSM和CDMA的移动手机通信标准。5发送一条SMS信息对Android系统来说有相当规范的步骤:(1) 在AndroidMainifest.xml文件中声明权限:(2) 使用SmsManager.getDefault()静态方法,获取SmsManger的实例:SmsManager mySms = Sm

16、sManager.getDefault();(3) 定义一个目标号码和发送文本,使用sendTextMessage()方法发送SMS信息到另一个Android设备:String msg = Sending my first message;mySMS.sendTextMessage(destination,null,msg,null,null); 在Android系统中有一个很重要的组件,那就是广播BroadcastReceiver,广播接收器组件用于接收和响应系统广播的消息。广播接收器也需要通过Activity与用户交互进行桥接6。 Android系统在手机收到运营商的短信后,会向手机每个应

17、用程序发送短信广播,通知所有应用程序此时此刻系统有短信接收,只要在程序中注册短信广播接收器,我们就可以在程序中分析短信文本。实现具体的操作和功能实现。系统的短息广播标志为:android.provider. ephony.SMS_RECEIVED。本软件的远程指令控制需要建立一套用于安全手机和被盗手机相互识别的指令集,在软件中指令集的定义如下:1.发送定位丢失手机指令:(wujiandao*密码*dingwei)2.发送激活报警铃声指令:(wujiandao*密码*baojing)3.发送设定屏保密码指令:(wujiandao*密码*suoding)4.发送格式化请求指令:(wujiandao

18、*密码*wipedata)5.发送确定格式化指令:(wujiandao*密码*geshihua)6.获取丢失手机坐标指令:(Location#纬度#经度*地址*)根据以上的指令集,在程序中开启一个后台服务,在服务中注册短信广播接收器,这里需要把广播接收器的权限提至最高,保证一旦接收到系统的短信可以最先过滤和分析这些指令;一旦确定是以上指令集的内容,则将指令解析并销毁短信广播,保证不影响其他应用程序的正常工作。3.2. 底层平台导入和开发步骤3.2.1. 申请密钥XX地图SDK提供的服务是免费的,接口无使用次数限制。我们首先要需先申请密钥(key),才可使用该套SDK。任何非营利性程序请直接使用

19、,商业使用必须请参考使用须知。 android:name=android.providerlephony.SMS_RECEIVED 其中android:priority 为广播的优先级,将此优先级别设置较高的参数,保证本程序能够拦截短信并对特定短信进行解析。(2) 功能代码:public void onReceive(Context context, Intent intent) 判断传来Intent是否为短信 if (intent.getAction().equals(SMSACTION) Bundle bundle = intent.getExtras(); 接收由Intent传来的数据

20、判断Intent是有数据 if (bundle != null) pdus为 android内置短信参数 identifier,通过bundle.get()返回一包含pdus的对象 Object smsObject = (Object) bundle.get(pdus); 构造短信对象 SmsMessage messages = new SmsMessagesmsObject.length; for (int i = 0; i10) String substr = currentMessage.getDisplayMessageBody().substring(0,10); if(substr

21、.equals(wujiandao*) 屏蔽指令短信,以防干扰其他应用程序 abortBroadcast(); Intent myIntent = new Intent(context,DoAfterReceiveMessage.class); . context.startActivity(myIntent); if(currentMessage.getDisplayMessageBody().substring(0,9).equals(Location#) abortBroadcast(); 屏蔽短信 Log.d(Sys,SMS:Location#); Intent i = new Int

22、ent(context,LocationMapActivity.class); . context.startActivity(i); 3.2.2. 指令业务分发器的设计与实现指令业务分发器的核心类是DoAfterReceiveMessage,主要是用于处理由SmsReceiver传送过来的远程指令功能业务;本质上它是一个业务逻辑分发器,根据不同的指令,启动不同的业务功能;与此同时,它还肩负一个向安全手机反馈的功能。(1) 获取从SmsReceiver传过来的短息: * 接收传递来的信息 * private void receiveMessage() Intent startingIntent

23、 = getIntent(); if (startingIntent != null) Bundle infod = startingIntent.getExtras(); if(infod!=null) number = infod.getString(sms_Address); messageText = infod.getString(sms_Text); (2) 分发处理从SmsReceiver传过来的业务请求,启动不同的业务功能: protected void onResume() super.onResume(); if(secret_number_acquire()= null)

24、 sendMessage(您手机未设定密码,不能进行远程操作。,number); DoAfterReceiveMessage.this.finish(); else if(messageText.equals(wujiandao*+secret_number_acquire()+*dingwei) .(启动XX地图定位功能) DoAfterReceiveMessage.this.finish(); else if(messageText.equals(wujiandao*+secret_number_acquire()+*baojing) .(启动响铃功能) else if(messageTe

25、xt.equals(wujiandao*+secret_number_acquire()+*suoding) .(启动锁屏功能) else if(messageText.equals(wujiandao*+secret_number_acquire()+*wipedata) .(询问安全手机是否进行格式化) else if(messageText.equals(wujiandao*+secret_number_acquire()+*geshihua) .(启动手机格式化) else .(用户输入的密码出错) 3.2.3. 定位器的设计与实现定位器的主类是MyLocation类,主要实现的是利用

26、XX地图API实现手机自我定位的一个功能,并最终获取了手机所在地的经纬度值,因为本软件使用了XX地图SDK,所以定位的功能实现也必须使用XX地图SDK,这样定位起来的坐标点才能与XX地图图层的地点相吻合。图 3-2 定位器发送指令界面(1) 地图管理器、定位器、搜索器的初始化: BMapManager mapManager = new BMapManager(getApplication(); MyGeneralListener(); mLocationManager = mapManager.getLocationManager(); mLocationManager.enableProvi

27、der(int) MKLocationManager.MK_GPS_PROVIDER); 初始化MKSearch mMKSearch = new MKSearch(); mMKSearch.init(mapManager, new MySearchListener(); (2) 位置监听器的实现,获取经纬度: mLocationListener = new LocationListener() public void onLocationChanged(Location location) Log.d(Sys, MyLocation is listening.); if(location!=n

28、ull) x=location.getLatitude(); y=location.getLongitude(); Log.d(Sys, 纬度x=+x); Log.d(Sys, 经度y=+y); Intent i2 = new Intent(); i2.setClass(MyLocation.this, Null.class); startActivity(i2); ;3.2.4. 报警响铃器的设计与实现响铃的播放使用到的是Android音频管理器AudioManager和媒体播放类MediaPlayer,AudioManager用于管理系统音量,或者直接可以控制系统静音7。报警响铃器主类为R

29、ingService,它继承于Service,是驻后台的一个服务,实现的主要功能就是以手机的最大音量播放报警铃声,同时开启手机震动,直到设置的时间结束为止,或者使用安全手机发送close英语单词实现关闭手机响铃。这个功能主要是想通过控制手机发出声响,让用户根据声源找到手机的藏身之处。当然,即使手机在静音状态下,我们也是可以以最大音量实现发出警报。报警响铃器主要在程序启动的时候就开始监听传感器的状态,它主要依靠于Service在后台运行。Service为服务类,是一个在背景运行的程序,不提供显示窗体作为和用户之间的接口,它运行于应用程序的主线程上,不会影响到其他活动程序Activity和用户接口操作,通常Service会用来处理比较耗时的功能程序8。(1) 将手机音量调至最大值: public void onStart(Intent intent, int startId) mAudioM

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1