基于android的手机防盗appdoc.docx
- 文档编号:595983
- 上传时间:2022-10-11
- 格式:DOCX
- 页数:14
- 大小:226.90KB
基于android的手机防盗appdoc.docx
《基于android的手机防盗appdoc.docx》由会员分享,可在线阅读,更多相关《基于android的手机防盗appdoc.docx(14页珍藏版)》请在冰豆网上搜索。
基于android的手机防盗appdoc
课程设计说明书
题目:
基于android的手机防盗app
院系:
计算机科学与工程
专业班级:
信息安全11-x
学号:
20113xxxxx
学生姓名:
xxx
指导教师:
xx
2014年12月20日
XXXX大学课程设计(论文)任务书
计算机院系网络与信息安全教研室
学号
20113xxxxx
学生姓名
xxx
专业(班级)
信息安全11-x
设计题目
基于android的手机防盗app
设
计
技
术
参
数
(1)开机自启动
(2)获得android手机SIM卡号
(3)读写隐藏文件
(4)用MD5对文件进行加解密
(5)手机gps的应用
设
计
要
求
(1)手机防盗:
根据sim的变更, 判断手机是否被盗。
(2)根据协议发送手中中sim卡的信息,和当前手机的位置经纬度,给安全号码发送信息。
(3) 快速进入手机防盗md5加密。
工
作
量
要求设计说明书的字数在3000字以上。
工
作
计
划
2014.11.18根据课程设计的要求,查找相关资料,完成需求分析;
2014.11.19-11.25进行系统的概要设计;
2014.11.26-12.14进行系统的详细设计和源代码的书写;
2014.12.15对系统进行调试分析,写出课程设计报告。
参
考
资
料
(1)《Android系统原理及开发要点详解》韩超,梁泉著电子工业出版社
(2)《Android应用开发揭秘》杨丰盛著机械工业出版社
(3)《android开发入门与实战》姚尚朗著人民邮电出版社
指导教师签字
教研室主任签字
年月日
指导教师评语:
成绩:
指导教师:
年月日
XXXX大学课程设计(论文)成绩评定表
1.问题描述1
1.1问题的意义1
1.1.实验目的1
2.需求分析1
3.概要设计2
3.1手机防盗app实现流程分析2
4.详细设计3
4.1开机自启动模块3
4.2读取sim卡卡号4
4.3获取手机持有者位置信息5
4.5实现MD5加解密7
4.6文件的隐藏8
5.调试分析9
5.1设计的思考9
5.2常见问题9
6.测试结果10
6.1开机自启动测试结果10
6.2获得手机持有者当前位置测试结果10
6.3获得当前sim卡信息测试结果11
6.4读写隐藏文件以及生产MD5值测试结果11
总结12
参考文献13
1.问题描述
1.1问题的意义
通过本次课程设计了解安卓应用开发的基本流程,学会安卓应用开发过程中基本组件的使用,同时掌握安卓应用中一些基本服务的开启以及权限的添加。
(1)加深对安卓应用开发的流程的理解。
(2)熟练掌握安卓应用开发中基本服务的开启及对应服务权限的添加。
(3)加深对MD5散发的理解与应用。
1.1.实验目的
(1)掌握安卓应用开发的流程。
(2)掌握安卓应用开发中基本服务的开启及对应服务权限的添加。
(3)对已学过的安卓应用开发技术有一个系统的理解。
2.需求分析
在现实生活中几乎每个人手中都有一部手机,然而手机的丢失却越来越成为问题。
面对这个问题大家都没有很好的解决办法,也只能在自身的条件下提高安全意识。
我们这次课程设计主要实现当手机丢失后尽最大可能的找回手机,这在很大程度上弥补了安全措施的不足,基于手机防盗的app市面上有很多但大部分都做得不尽完美,总存在着缺陷,希望我们的这个课程设计能给大家一个新的思路去开发手机防盗app。
3.概要设计
3.1手机防盗app实现流程分析
本软件实现开机自启动,然后自动测试sim卡卡号,并与之前的卡号对比,若相同不做任何处理,若不同则定时向安全号码发送信息,以确认sim卡变更是否为正常行为。
发送信息的内容包括当前sim卡卡号、手机持有者的位置(经度,纬度),持有者移动速度与方向。
这样可以在手机丢失后方便丢失者找回手机。
流程图如图3.1所示:
图3.1手机防盗流程图
4.详细设计
4.1开机自启动模块
当Android手机启动时,会发出一个系统广播,其中就有开机自启动的广播信息ACTION_BOOT_COMPLETED,它的字符串表示常量为android.intent.action.BOOT_COMPLETED。
所以只要在开始时程序中捕获这个广播消息就可以开机自启动了。
为了捕获这个消息需要实现一个BroadcastReceiver的子类,在这个类中的onReceive方法里实现activity或者service的启动,需要在AndroidManifest.xml注册并添加相应的权限,如下;
--向系统注册receiver-->
android: name="com.example.mobilesafety.MyBroadcastReceive"> name="android.intent.action.BOOT_COMPLETED"/>
--添加权限-->
name="android.permission.RECEIVE_BOOT_COMPLETED"/> 具体实现源码如下: publicclassMyBroadcastReceiveextendsBroadcastReceiver{ privatefinalStringACTION="android.intent.action.BOOT_COMPLETED";//定义捕获消息的内容 @Override publicvoidonReceive(Contextcontext,Intentintent){ //TODOAuto-generatedmethodstub if(intent.getAction().equals(ACTION));//判断捕获的消息是//否为开机自启动消息,并启动SafetyMainActivity { Intentintent2=newIntent(context,SafetyMainActivity.class); intent2.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(intent2); } } } 4.2读取sim卡卡号 手机号码不是所有的都能获取。 只是有一部分可以拿到。 这个是由于移动运营商没有把手机号码的数据写入到sim卡中。 SIM卡只有唯一的编号,供网络与设备识别那就是IMSI号码,手机的信号也可以说是通过这个号码在网络中传递的,并不是手机号码。 所以我们读取的是IMSI好,需要在AndroidManifest.xml添加相应的权限,如下; name="android.permission.READ_PHONE_STATE"/> 具体过程实现如下; privateTelephonyManagertManager;//定义TelephonyManager的对象,//以获得手机设备信息 publicStringgetSimSerialNumber(){ tManager=(TelephonyManager)getSystemService(TELEPHONY_SERVICE);//获得系统中TelephonyService Stringline=tManager.getSimSerialNumber();//获取SIM卡卡号 returnline; } 4.3获取手机持有者位置信息 GPS定位技术的主要功能是能够为终端用户提供高精度的位置信息。 移动运营商采用基于GPS定位技术的位置服务后,终端用户可以方便快捷地获知自己或他人当前所处的位置,这也为我们防盗提供了方便,在AndroidManifest.xml添加相应的权限,如下; name="android.permission.ACCESS_FINE_LOCATION"> 具体实现过程如下; publicclassGPSMainActivityextendsActivityimplementsLocationListener{ privateLocationManagerlocationManager; privateLocationlocation; privateStringprovider; privateSimpleDateFormatsimpleDateFormat; @Override protectedvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.fragment_gpsmain); locationManager=(LocationManager)getSystemService(Context.LOCATION_SERVICE);//获得系统服务 simpleDateFormat=newSimpleDateFormat("yy-mm-ddhh: mm: ss"); //使用Criteria确定androidlocationprovider Criteriacriteria=newCriteria(); criteria.setAccuracy(Criteria.ACCURACY_FINE);//设置为最大精度 criteria.setAltitudeRequired(false);//不要求海拔信息 criteria.setBearingRequired(false);//不要求方位信息 criteria.setCostAllowed(true);//是否允许付费 criteria.setPowerRequirement(Criteria.POWER_LOW);//对电量的要求 criteria.setAccuracy(Criteria.ACCURACY_FINE); provider=locationManager.getBestProvider(criteria,true); location=locationManager.getLastKnownLocation(provider); updateWithNewLocation(location); locationManager.requestLocationUpdates(provider,2000,10,this); } privatevoidupdateWithNewLocation(Locationlocation2){ StringlatLongSt
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 android 手机 防盗 appdoc
![提示](https://static.bdocx.com/images/bang_tan.gif)