务。一旦手机被盗,用户可立即致电公司。公司随即向被盗手机发送指令,将里面存储的信息全部转移至安全服务器,随后锁定手机功能并使手机发出刺耳的鸣声。
该公司介绍说,防盗程序启动后,窃贼即便更换SIM卡也无法解除锁定。此外,只要不取出电池,鸣声就不会停止。用户购买新手机后,还可申请将原来手机中的全部信息转移至新手机内。据伦敦市警察局统计,该市每月约有1万部手机被盗。警方希望这一手机防盗软件能改善这一局面[3]。
美国的苹果公司,在其官网上向所有用户提供了一项云端技术服务,只要苹果手机或者苹果的其他移动设备,都可以享受到手机卫星定位功能。具体做法是:首先,在拿到苹果后,你要先申请属于你的Apple?ID,登录苹果商店或者在Mobile?Me上注册,这个应用就可以实时定位你的iPhone的位置。
图 1.2 苹果手机防盗
1.3开发研究内容
从上面的应用我们可以看出,无论是国内还是国外,只要是致力于防盗功能的软件,其最核心功能都用到了GPS、锁屏、媒体播放等。因此,综合以上各软件优点,新型的手机防盗应用软件应具有GPS定位、被盗时锁屏、通过短信控制以最大音量发报警音、远程销毁隐私数据以及偷拍盗窃者长相等功能。同时,防盗应用软件也应充分利用操作系统固有的资源。
因此,本课题的任务是设计一款基于 Android 平台开发的一款手机防盗软件。通过Android系统中的广播机制后台监听手机的各种状态,根据状态的改变来判断手机是否安全。一旦手机丢失,我们便可通过向失窃手机发送指令短信的方式,应用Android系统的GPS(Global Positioning System,全球定位系统)、SMS(Short Messaging Service,短信服务)、Activity(用户界面)、BroadcastReceiver(广播机制)、Intent(请求)、Service(服务)以及Content providers(访问数据库)等技术控制手机并获得手机具体位置,旨在为丢失手机用户找回手机提供了重要依据。
2 手机防盗应用开发的基础
2.1 Java基础
Java由Sun(Stanford University Network)公司于1995年5月为增强互联网的交互性而设计。Java语言最早的名字为C++--,从名字上我们可以看出,Java语言的原型为C语言,后经大量优化在C基础上增增减减,最终设计出这款现在企业级开发的第一语言[4]。Java语言具有极强的跨平台能力,多语言的支持,占据着互联网开发语言的首位。
基于Android系统的手机应用全部应用Java语言编写完成。所以,想在Android系统上做出一个好的应用来不仅要会Java语言,而且还要运用熟练。对此,我通过观看Mars老师的Java4Android视频和对Java相关书籍的精读与练习,强化了自己对Java语言的掌握,使我对Java的运用能力有了很大的提高,并为编写与设计Android应用奠定了良好地基础。
2.2 Android基础
知己知彼者百战百胜。想在Android系统上做开发,就一定要了解Android系统,知道他的由来和内部构造。
Android操作系统最初主要支持手机,2005年Google收购了刚刚成立22个月的Android公司,也正是有了在Google这样巨头公司下发展的机会才使得Android系统迅猛发展。2007年11月5日,以Google为首的34家公司宣布成立OHA(Open Handset Alliance,开放手机联盟)。2008年9月22日,美国运营商T-Mobile USA在纽约正式发布第一款Google手机--T-Mobile G1。Android平台的主题思想和Google是一样的,就是随时随地为每个人提供信息[5]。
最早的Android版本为Android 1.0(发条机器人),自Android系统发布第一版本到现在已经更新多次。Android 1.1 Beta(阿童木) 2008年9月发布的Android第一版,后来由于涉及到版权问题,Goolge将其命名规则变更为用甜点作为它们系统版本的代号的命名方法。其各版本logo如图2.1所示。
Android 1.5 Cupcake(纸杯蛋糕)
Android 1.6 Donut(甜甜圈)
Android 2.0/2.0.1/2.1 Eclair(松饼)
Android 2.2/2.2.1 Froyo(冻酸奶)
Android 2.3 Gingerbread(姜饼)
Android 3.0 Honeycomb(蜂巢)
Android 3.1 Honeycomb(蜂巢)
Android 3.2 Honeycomb(蜂巢)
Android 4.0 Ice Cream Sandwich(冰激凌三明治)
Android 5.0 Jelly Bean(果冻豆)
3 手机防盗应用方案的设计
在电子领域,要想拥有很好的市场前景,就必须应用最先进的设计技术、最成熟的设计理念以及最合理的设计方法才能使得产品得以发展。于是我选择了目前市场应用最为广泛的金山手机卫士、360手机卫士和QQ手机管家其中的手机防盗部分作为参考。学习并对比这3家在此功能上的不同。分别在UI(User Interface,用户界面)、Function(功能)和Service上做了比较。
表格 1 手机防盗UI、Function和Service对比
比对参数 金山手机防盗 360手机防盗 QQ手机防盗
UI 初始化设置步骤 3步 3步 4步
主界面信息栏个数 6个 6个 5个
进入应用层界面效果 以文字为主 视图+文字 以文字为主
UI层底色 灰色 白色 白色
Function 主要功能 换卡短信通知
销毁数据
定位手机
发报警音
锁定手机
防盗拍照 换卡短信通知
删除数据
追踪手机位置
响报警音
锁定手机 数据删除
手机定位
找回密码
远程锁机
输入错误提示 一般 精准 一般
Service GPS定位功能 有 有 有
短信监听发送 有 有 有
开机监听 有 有 无
从表格1中我们可以很清楚的看到,在UI方面360更为注重,以多图少字的方式展现功能,使用户更加喜欢,也方便了用户对功能的理解。不过从Function上来看,金山手机防盗的设计就要优于另外两家,在所有功能的基础上还加进了一项防盗拍照,这是仅有4项功能的QQ所没能想到的安全设计。
综合以上软件优点便是此软件将要实现并达到的目标。因此我将结合360的UI、金山的Function和Service做出一款即看上去漂亮而且功能也强大的手机防盗软件。
3.1 UI设计
UI设计是指对软件的人机交互、操作逻辑、界面美观的整体设计。好的UI设计不仅是让软件变得有个性有品味,还要让软件的操作变得舒适、简单、自由,充分体现软件的定位和特点。如图3.1就是一副很美观的UI。
图 3.1 UI
软件设计可分为两个部分:编码设计与UI设计。编码设计大家都很熟悉,但是UI设计还是一个很陌生的词,即使一些专门从事网站与多媒体设计的人也不完全理解UI的意思。UI的本意是用户界面,是英文User和 Interface的缩写。从字面上看是用户与界面2个组成部分,但实际上还包括用户与界面之间的交互关系。
在飞速发展的电子产品中,界面设计工作一点点的被重视起来。做界面设计的“美工”也随之被称之为“UI设计师”或“UI工程师”。其实软件界面设计就像工业产品中的工业造型设计一样,是产品的重要卖点。一个电子产品拥有美观的界面会给人带来舒适的视觉享受,拉近人与商品的距离,为商家创造卖点。界面设计不是单纯的美术绘画,他需要定位使用者、使用环境、使用方式并且为最终用户而设计,是建立在科学性之上的艺术设计[6]。
综合上述UI设计特点,加上方便实用的设计特点,我将本手机防盗应用的UI分为了5层,他们由UI窗口层、UI主层、UI功能体验层、UI功能查看层和UI功能设置层组成。其层次流程如图3.2所示。
图 3.2 UI总流程图
3.1.1 UI窗口
上一篇:
基于Android的移动公交查询系统设计与实现
下一篇:
试论APP广告在手机中的应用