码迷,mamicode.com
首页 > 移动开发 > 详细

2014年齐鲁软件大赛智能手机应用一等奖——防盗星

时间:2015-04-02 20:55:21      阅读:261      评论:0      收藏:0      [点我收藏+]

标签:软件   应用   android   代码   齐鲁软件大赛   

猫猫分享,必须精品

这是本猫14年参加齐鲁软件大赛的android作品,欢迎大家交流学习

素材代码地址:过会儿上传
原文地址:http://blog.csdn.net/u013357243?viewmode=contents
视频地址:
http://player.youku.com/player.php/sid/XODIzNjI3Nzcy/v.swf


项目人员

翟乃玉 王婓 李衡 李治 李保中


项目论文

智能手机开发-防盗星
翟乃玉 王婓 李衡 李治 李保中
(滨州学院,滨州,256600)

摘要
软件定位于手机防盗,软件总共分为两大模块,一个是本机控制模块,另一个是远程控制模块。
本机控制模块内有:手机防盗设置,手机求救,一键锁屏,密码重置,关闭报警音乐,一键卸载软件。
远程控制中有,远程控制报警铃声,远程控制锁屏,远程获取手机GPS经纬度,打开百度地图获取手机位置,远程控制手机拨号,远程控制格式化手机。

关键词
Android;防盗;控制;锁屏;报警;定位;软件设计

1 项目背景
本软件为手机应用软件,现在智能手机用户越来越多,小偷扒手队伍也在不断扩大,他们专门针对一些不错的智能手机下手,坐公交、逛街……你甚至都不知道是什么时候明明记得还揣在兜里或者放在包里的手机不翼而飞。如果仅仅只是手机被偷的话还稍稍好一点,但是如果小偷通过你的手机通讯录或者短信去骗你的亲戚朋友或者获得了某些重要信息的时候你损失的恐怕就不止是一部智能手机那么简单了。有些童鞋如果还有一些冠希老师那样的嗜好,在手机里放了一些隐私照片的时候,手机丢了你会担心无良的小偷会给你放到网上么?所以这时候,如何防止你的智能手机被盗几乎成了一门必修课。
为你的Android手机安装一款好用的防盗应用,不但可以让你有可能通过短信、定位等方式找到你的手机,就算是最坏的情况下找不回你的手机也可以通过远程控制销毁手机里的各种数据。这样小偷就算偷走了你的手机也偷不走你手机里的重要数据,将你的损失降到最低限度。
在此情景下,我们的手机防盗软件应景而生,一款好的防盗软件可以提高您的手机被盗找回的可能性。原来的时候手机丢了,就基本不用找了,现在手机丢了,您可以通过安全号码,其他手机来得到您的手机位置,确定您的手机在哪里,并且还可以格式化手机,让您的手机,数据都更加安全。

2 系统整体结构
该软件定位于手机防盗,软件总共分为两大模块,一个是本机控制模块,另一个是远程控制模块。
本机控制模块内有:手机防盗设置,手机求救,一键锁屏,密码重置,关闭报警音乐,一键卸载软件。
远程控制中有,远程控制报警铃声,远程控制锁屏,远程获取手机GPS经纬度,打开百度地图获取手机位置,远程控制手机拨号,远程控制格式化手机。如图1所示:

图1:系统整体结构
3 主要功能
3.1手机防盗模块
第一次进入手机防盗模块需要设置手机密码以及密保问题答案,这里您要牢记密码和密保,密码关系到您的手机的安全,请不要随意泄露。
3.1.1、手机防盗功能;
进入手机防盗功能界面,根据提示设置手机功能,例如设置安全号码,设置sim卡绑定,设置获取超级权限,选择设置联系人,防盗功能的开启等等。设置完成,您就可以操纵
2.1.2、手机求救功能;
如果您在室外遭遇危险,可以选择此功能,此功能会向您绑定的安全手机发送求救短信,然后您的朋友可以通过控制端GPS定位来定位您,我们不仅仅防盗您的手机,还保护您的安全
3.1.3、一键锁屏功能;
在平时用手机时候锁屏按键是不是要经常被按动,有的手机甚至一年不到锁屏键就被按坏了,这里为了更好的保养您的手机,我们特设置此项功能,点击屏幕可以直接锁屏,让您不再为手机的锁屏键烦恼。
3.1.4、密码重置功能;
有时候因为粗心,大意,不小心把自己的手机密码忘记了,怎么办?不用急,您只需要点这里,用密保问题就可以重置手机状态,从此,再也不用担心记不住密码了。
3.1.5、关闭音乐功能;
有时候手机找不到了,用安全手机让自己手机报下音乐,但是找到了他还响怎么办?点这里,可以帮你关闭音乐,丢三落四也不用担心了。
3.1.6、点我卸载功能;
如果您觉得我们的软件不好,或者不喜欢用了,一般卸载的时候会很麻烦,您需要去设置中取消激活,但是有这个功能,您仅仅需要点击输入密码,就可以将软件卸载了。
3.2手机丢了模块
本模块主要功能在于控制您丢了的手机,比如您的手机丢了,您可以通过输入您丢失手机号码以及您丢失手机密码,还有本手机的密码来控制你的手机。因此,进入手机丢了模块需要您输入密码。
3.2.1控制警铃功能;
如果手机找不到了,可能忘记放哪里了,只需要您用别人手机进入此模块然后点击他就可以让您丢失的手机响起警报音乐,如果您的手机被偷了,然后小偷给你换卡了,这时候手机后台会自动给您的绑定的安全号码发送一个SIM卡变更报警短信。这时后您就可以通过短信知道手机号码了,当然,这时候手机号码会自动显示到进入手机丢了模块进入时丢失手机号码的号码框中。
3.2.2、远程锁屏功能;
手机丢失时候,您可以选择这个功能,可以控制您的手机自动锁屏,锁屏密码为您的手机密码。
3.2.3、远程GPS功能;
手机丢失时候,您可以选择这个功能,控制您的手机打开GPS,并且以短信形式返还给您,您可以通过打开百度地图来得到您手机的位置。
3.2.4、打开地图功能;
获取到手机丢失的GPS经纬坐标的时候,您可以选择这个功能,可以以友好的形式显示在百度地图中,您可以通过地图显示位置以及控制警铃等功能来找回手机。
3.2.5、远程拨号功能;
手机丢失时候,您可以选择这个功能,可以控制您的手机拨打安全号码,用安全号码接听就可以得到小偷的附近声音。
3.2.6、远程格式化功能;
手机丢失时候,如果您手机中有隐私的信息,您不想被他人看到,就选用此项功能吧,他可以让您的手机直接一键格式化。

3 主要创新点
SIM卡更换自动报警。
远程GPS定位。
地图显示手机位置。
远程控制手机拨打安全号码。
远程格式化手机。
远程控制手机锁屏。
远程控制手机报警。

4 技术要点
4.1 Android程序的结构与运行过程
Android的工程文件夹的第一层包括:“src”、“Android Library”、“assets”、“res”目录和AndroidMainifest.xml文件,放置在“\src”里的是主程序、程序类(class),放置在“\res”里的是资源文件(Resource Files),如程序ICON图标、布局文件(\layout)与常数(value)。
Android程序的主类,其内容与一般java程序格式相类似。主类继承自Activity类,在主类中一般要重写了onCreate()方法,在该方法内以setContentView()来设置这个Activity要显示的布局。
Android应用程序有三种类型,分别为:前端Activity(Foreground Activity)、后台服务(Background Services)、间隔执行Activity(Intermittent Activity)。前端activity是Activity应用程序的基本组成部分,运行在手机前端程序中;后台服务程序可能是看不见的系统服务(System Service)、系统Broadcast(广播信息)与Receiver(接收器);间隔执行Activity则类似进程(Threading)、Notification Manager等。
应用程序一旦被执行,就会按照图三所示的流程顺序进行,若需要在Activity里编写程序,默认常见的进入点为重点onCreate(Activity)和onStart(Service)。onResume()与onPause()这两个方法是Activity在onCreate之后运行过程中的生命周期,当程序失去前端焦点或者被关闭,就会触发Activity的onPause()状态;当应用程序再次被唤醒,则会回到OnResume()状态。
图二:程序的逻辑结构
图三:android的基本程序流程

4.2百度地图运用于火星坐标
手机地图业务是指用户手机上通过 HYPERLINK “http://baike.baidu.com/view/7319.htm” \t “http://baike.baidu.com/view/_blank” WAP方式或者客户端软件方式,查找自己、好友的位置信息、查询周边信息、规划交通路线的一种与用户位置相关的位置业务。 HYPERLINK “http://baike.baidu.com/view/1794872.htm” \t “http://baike.baidu.com/view/_blank” 手机地图为您提供了一种便捷实用的掌上地图,在 HYPERLINK “http://baike.baidu.com/view/1810278.htm” \t “http://baike.baidu.com/view/_blank” 手机屏幕这块小小的方寸之间,您可以查询食、玩、行全方位城市信息、查找自己和好友的位置、查找道路信息,成为您的随身 HYPERLINK “http://baike.baidu.com/view/793650.htm” \t “http://baike.baidu.com/view/_blank” 向导,轻松畅游城市,毫无后顾之忧
我们的应用以百度统计API为基础,并且整合运用百度地图API,从而实现百度题图的应用。
在地图技术运用中出现了火星坐标问题。
火星坐标:国家保密插件,也叫做加密插件或者加偏或者SM模组,其实就是对真实坐标系统进行人为的加偏处理,按照几行代码的算法,将真实的坐标加密成虚假的坐标,而这个加偏并不是线性的加偏,所以各地的偏移情况都会有所不同。而加密后的坐标也常被人称为火星坐标系统。为了解决这个问题,我们从开源网站得到了一个解决的技术。然后以ModifyOffset这个类为基础,实现了自己的解决方式,但是如果想要上市运营的话,还需要去国家的相应部门申请相应权限。

4.3 自定义仿照WP8的UI控件
在界面上我们做出了自己的创新,以蓝色的天空和大草原为背景,然后给予仿照WP8手机UI的按钮控件。基于 ImageView 的MagnetView,位于com.laonai.ui;的包下面。
该功能实现了仿照WP8的点击中间缩小特性,点击四周偏转特效果等,实现了手机自定义的ImageView的华丽转变。
4.4 安全问题与MD5加密
对与手机中存储的密码中,我们用到了MD5加密,在算法中运用了MD5的三次加密以及偏移一个数的算法,这样充分保证了密码不被破解。

package com.bzu.mobilesafe.utils;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class Md5Utils {
    public static String encode(String password) {

        MessageDigest digest;
        try {
            digest = MessageDigest.getInstance("MD5");
        } catch (NoSuchAlgorithmException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            // can‘t reach
            return "";
        }
        byte[] result = digest.digest(password.getBytes());
        StringBuffer sb = new StringBuffer();
        for (byte b : result) {
            int number = b & 0xff - 5;
            String str = Integer.toHexString(number);
            if (str.length() == 1) {
                sb.append("0");
            }
            sb.append(str);
        }
        return sb.toString();
    }
}

5 结语
在移动互联的时代,科学技术的不断改进,使得电子产品的更新换代的速度越来越快,手机款式和硬件设施在不断升级。同时,伴随着手机发展的手机app应用市场,亦呈现暴涨式增长,深入到人们的日常生活。随着人们越来越依赖手机,手机防盗也成了手机依赖者越来越最为关注的问题。
在此背景下,手机防盗软件应景而生,一款好的防盗软件可以提高您的手机被盗找回的可能性。原来的时候手机丢了,就基本不用找了,现在手机丢了,您可以通过安全号码,其他手机来得到您的手机位置,确定您的手机在哪里,并且还可以格式化手机,让您的手机,数据都更加安全。
但由于本组人员水平有限,并且是第一次做android方面的复杂程序。在程序的开发过程中遇到了各种问题。在程序的最终版本中也一定有许多尚未发现的问题,恳请各位老师批评指正。

参考文献
[1] 齐鲁软件设计大赛第十一届大赛题目,2013
[2] 《》 著 出版社 2007
[3] 《Photoshop7.0中文版》应勤著 清华大学出版社 2003
[4] 《android sdk 开发范例大全》余志龙 陈昱勋 邓明杰 郑明杰 陈小凤 郭秩均 著 王世江 改编 2010
[5]《xml数据库技术》万常选著 清华大学出版社 2005

指导老师评语:
软件设计大赛经历了大概两个月的时间,从研究每个设计题目到最终选择题目;从学习各类软件设计需要的知识到后来的着手软件设计、完成作品直至后来的总结讨论,我真真切切的看到了队伍里每一个队员的改变:从一开始的懵懵懂懂到慢慢的适应队伍,每个人都渐渐清晰的认识到了自己在整个队伍中的位置,以至能够认识到大家的同一个目标并为之奋斗,迸发出一个团队的后劲力量,我说这支队伍一定是本次软件设计大赛之路上的一支劲旅。
由于大多数队伍没有过任何做软件设计的经验,一开始的时候大家也只能是以做完为目的,毕竟软件设计的工作量是很大的,在如此有限的时间内很难能按照软件设计要求做出较满意的作品出来。尤其是在软件设计过程中,他们也遇到了很多技术上的难题,而此类难题都是比较专业性的软件设计难题,但是这却没有难倒他们,通过咨询专家或者查阅相关资料,他们一步一步克服难关直到完成作品,整个过程令人振奋鼓舞。
经过一个半月的时间,他们的作品基本完成了,剩下的是软件的收尾工作,大家丝毫没有轻视软件设计过程中的每一个步骤,完成代码、完成功能的实现、作品的美工美化。在整个软件开发的过程中,我真实地看到了学生们惊人的自学学习能力,并对学生们所不断涌现的奇思妙想所叹服。非常感谢齐鲁软件设计大赛能为学生们提供这样一个好平台,让他们可以很好的展现他们的实力,也使他们看到了自己的潜力之所在,为将来的就业和创业打下良好的基础!

联络方式:
(1)通讯地址:山东省滨州市滨州学院
(2)电话:18366879731
(3)E-mail:znycat2013@163.com
(4)QQ号:1764541256

手机防盗

本机控制模块

远程控制模块

手机防盗设置

远程控制报警铃声

远程控制锁屏

远程控制格式化手机

远程控制手机拨号

远程获取手机GPS经纬度

打开百度地图获取手机位置

一键卸载软件

密码重置

关闭报警音乐

一键锁屏

手机求救

学习交流

ps:如果有想跟猫猫交流学习的,可以加我qq:1764541256,或者微信znycat

2014年齐鲁软件大赛智能手机应用一等奖——防盗星

标签:软件   应用   android   代码   齐鲁软件大赛   

原文地址:http://blog.csdn.net/u013357243/article/details/44837039

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!