彭一林
(一)界面设计
主界面采用了Win8 metro方块,在两个页面的转换用了3D翻转效果,设置一栏还引入了经典的SlidingMenu滑动菜单栏设计。每一个功能模块的页面都是用法Android特有通过xml文件进行布局,而不是单纯的采用Android代码进行设计。为了更好的体现界面美观,系统中自定义了几种组件,比如显示任务管理中的进程列表、系统弹出的对话框和悬浮球视图等。而关于背景颜色、字体颜色和大小等的调节,可以直接运用xml中某些字段来实现,也可以通过图片进行设计。为了突出软件特色,全部布局采用蓝白色调,以求达到简洁、干净。
(二)软件构架设计
Android应用程序的设计应当简单明了,尽量做到简洁,一目了然,应尽量减少无谓的装饰,并考虑屏幕空间,使设计的各模块看起来布局合理。另外,应考虑分辨率大小,考虑将来设计的按钮、菜单、标签等组件摆放位置的合理,让用户在使用时感到逻辑流程、简单。因此,根据Android手机防火墙的功能需求,在划分界面时,每一个模块对应各个功能模块设计界面。
(三)对话框设计
对话框是一个显示在当前活动前面的小窗口,一般用来通知用户当前系统运行中出现的问题而导致程序暂停运行,或者告知运用改进行的操作。本软件的对话框主要用于数据输入、更新界面进度条。比如,在流量设置中,运用对话框来输入当月结余流量和套餐值。
(四)界面美化
图标的作用有两个,一个是实现从一个界面跳到另一个界面,实现功能衔接。在系统中很多情况下都是用Button(或ImageButton)按钮实现该功能。但在主界面中则使用整个layout布局贴上图片实现按钮点击的效果,采用类似于Win8 metro方块的设计思想。另一个功能只是为了美观,达到整体布局统一的效果。
二、数据路线设计
数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。
(一)表结构
1、拦截记录表(record)
拦截记录表有七个字段,用来表示电话和短信的拦截信息。其中state字段比较复杂,有四种状态:电话呼入,用1标记;电话呼出,用2标记;接收短信,用1标记;发送短信,用2标记。
三、系统功能描述
该系统核心部分应包括:流量监控、上网监控、骚扰拦截、任务管理、软件管理。系统的功能是按照需求分析而来,但在某些方面会有所改动。这些改动与需求分析来比,会使整个防火墙运用更加方便、更加实用和简单。
(一)流量监控流程
该流程描述的主要功能是:显示GPRS和WiFi使用情况,查看GPRS实时使用情况,进行流量管理。
1、流量监控服务
当手机开机或进入流量管理界面后,系统会自动开启服务。在服务里面,会分别判断gprs和wifi的状态,若处于开启状态,则系统会获取正在运行的需要访问internet的应用程序id,根据该id来进一步获取它们使用网络的流量,并且根据之前已经使用的流量来重新计算剩余流量。若gprs和wifi没有开启,则显示已使用的流量情况。当计算出gprs只剩下1M以下时,会自动关闭gprs,在通知栏弹出报警提示。
2、流量显示
进入流量管理主界面后,会显示有流量监控服务得出流量使用情况结果,包括套餐使用情况和今日使用流量。同时,也可以点击菜单编辑流量套餐信息。在实时动态显示流量界面中,可以看到每一个应用程序所使用的gprs流量。
(二)上网监控流程
监控和关闭手机上的应用3g和wifi上网功能。
在手机开机或第一次使用时,该系统会判断上网监控功能是否开启,默认状态是白名单、自动执行选择。但要实现上网监控的前提是手机已经被root。若检测到手机已经root过了,系统会自动根据以前选择的名单、模式来监控已经选择的应用。
进入上网监控的主界面后,选择你需要的模式。如果你只想允许某些应用上网,则可以选择白名单模式。白名单模式负责监控除你选择的应用以外的软件的上网行为,屏蔽它。同时,用户也可以选择使用3g或者wifi,甚至两者都可以访问网络的方式上网。只要你做出选择则执行后,该应用一定会按用户需要的方式来上网。相反,采用黑名单模式的话,则会只管理用户选择应用而不管其他应用上网的行为。
(三)骚扰拦截流程
该流程描述的主要功能是:对来电或拨打和接收短信或发送短信基于规则拦截,以及根据关键字过滤拦截。
来电拦截是指只对外界拨打过来的号码进行拦截。它有两种模式:黑名单与白名单模式。为了能多样化的拦截,用户可以在添加黑白名单或者编辑名单时对该名单进行规则的定义。这里有四种规则:禁止呼入、禁止呼出、禁止接受和禁止发送。其中后面两条规则是针对于短信拦截的,但它们在同一个界面进行设置(即addBlack.xml或addWhite.xml)。
拦截发送短信指的是在黑白名单中设定规则“禁止发送”,功能比较简单。当系统监听到用户需要发送短信时,根据需要发送短信的号码进行黑白名单的匹配。当匹配成功后,早进行规则匹配,若是“禁止发送”则马上进行拦截,并且显示在骚扰拦截记录中。
(四)任务、软件管理流程
1、任务管理。
用户进入任务管理的界面后,可以随意选择任何一个进程。若你想kill掉的话,只需点击界面下面的图标按钮。若你想查看该进程到底请求了那些权限,则需要稍微长时间选定它,就会在弹出的对话框中显示详细的信息。同时,用户也可以看到当前进程数量和可用内存大小。
2、软件管理。它与任务管理类似。用户接入软件管理界面后,随意选择一个软件,就可以在弹出的菜单中操作该软件。可以进行卸载软件、启动该软件、以及查看软件信息。
参考文献:
[1]胡松萌.Android平台智能防火墙系统的设计与实现[J].计算机光盘软件与应用,2013,(6):138-140.
[2]朱学森.基于Android 智能手机防火墙的研究与应用[D].内蒙古科技大学,2012.