信 息 工 程 学院
软件工程
课程设计报告本
题 目: android 防火墙的设计与实现
专业班级:
软件 082 班
学 生:
肖克珑
指导老师:
李淑芝
2011 年 7 月 20 日
目 录
第一章 问题定义 ................................... 1
1.问题定义................................................................................................................................ 1
2.系统要解决的问题 ................................................................................................................1
第二章 可行性研究报告 ............................. 2
1 引言........................................................................................................................................ 2
1.1 编写目的....................................................................................................................2
1.2 背景............................................................................................................................ 2
1.3 定义............................................................................................................................ 2
1.4 参考资料....................................................................................................................2
2 可行性研究的前提................................................................................................................3
2.1 要求............................................................................................................................ 3
2.2 目标............................................................................................................................ 4
2.3 条件、假定和限制 ....................................................................................................4
2.4 进行可行性研究的方法............................................................................................4
2.5 评价尺度....................................................................................................................5
3 所建议的系统 ........................................................................................................................ 5
3.1 对所建议系统的说明................................................................................................5
3.2 业务流程及数据流图................................................................................................5
3.3 工作负荷....................................................................................................................6
3.4 局限性........................................................................................................................ 6
3.5 技术条件方面的可行性............................................................................................6
4 社会因素方面的可行性........................................................................................................6
4.1 法律方面的可行性 ....................................................................................................6
4.2 用户使用可行性 ........................................................................................................6
5 经济可行性 ............................................................................................................................ 6
5.1 投资成本..................................................................................................................... 6
5.2 收益............................................................................................................................. 7
5.3 成本/收益分析: ......................................................................................................7
6 结论........................................................................................................................................ 8
第三章 项目开发计划 ............................... 9
1 引言........................................................................................................................................ 9
2 项目概述.............................................................................................................................. 10
2.1 工作内容...................................................................................................................10
2.2 主要参加人员 ...........................................................................................................10
2.3 产品.......................................................................................................................... 10
2.4 验收标准................................................................................................................... 11
2.5 完成项目的最迟期限...............................................................................................11
3 实施计划.............................................................................................................................. 11
3.1 工作任务的分解与人员分工 ...................................................................................11
3.2 接口人员................................................................................................................... 11
3.3 进度.......................................................................................................................... 11
3.4 关键问题..................................................................................................................12
4 支持条件.............................................................................................................................. 12
4.1 计算机系统支持 .......................................................................................................12
第四章 需求规格说明书 ............................ 13
1 引言...................................................................................................................................... 13
1.1 编写目的...................................................................................................................13
1.2 背景........................................................................................................................... 13
1.3 定义........................................................................................................................... 13
1.4 参考资料...................................................................................................................13
2 任务概述.............................................................................................................................. 14
2.1 开发背景...................................................................................................................14
3 需求规定.............................................................................................................................. 14
4 运行环境规定 ......................................................................................................................16
4.1 硬件环境...................................................................................................................16
4.2 接口........................................................................................................................... 16
4.3 控制........................................................................................................................... 16
第五章 概要设计说明书 ............................ 17
1 引言...................................................................................................................................... 17
2 总体设计.............................................................................................................................. 18
3 接口设计.............................................................................................................................. 19
4 运行设计.............................................................................................................................. 19
第六章 开发环境的搭建 ............................ 21
1 jdk 的安装及配置 ...............................................................................................................21
2 Eclipse 安装 .......................................................................................................................21
3 Android SDK 安装...............................................................................................................22
4 android 模拟器 root 权限的获取 ....................................................................................23
5 ables 的配置用工作原理 ..................................................................................................23
第七章 程序数据存储机制 ........................ 25
1 android 数据存储简介 ......................................................................................................25
2 SharedPreferences 存储数据的基本思路、.................................................................. 25
第八章 详细设计 .................................. 33
1 项目目录结构及各目录的含义 ........................................................................................33
1.1 目录结构...................................................................................................................33
2 功能模块的划分..................................................................................................................35
3 android 手机流量的控制的详细实现 ............................................................................. 35
3.1 在 AndroidMenifest.xml 加入相应的权限 ........................................................ 35
3.2 详细代码解析 ..........................................................................................................35
3.3 各类之间的关系 .......................................................................................................35
4 android 手机电话陌生号码的拦截 ..................................................................................41
4.1 实现原理..................................................................................................................41
4.2 关键代码..................................................................................................................42
5 android 手机短信拦截的设计 ..........................................................................................43
5.1 实现原理..................................................................................................................43
5.2 关键代码..................................................................................................................46
5.3 流程详解..................................................................................................................46
第九章 用户手册 .................................. 48
1 引言...................................................................................................................................... 48
1.1 编写目的..................................................................................................................48
1.2 背景.......................................................................................................................... 48
1.3 定义.......................................................................................................................... 48
1.4 参考资料..................................................................................................................48
1.5 功能列表..................................................................................................................48
2 系统运行流程 ......................................................................................................................48
3 故障处理要求 ......................................................................................................................51
4 其他专门要求 .......................................................................................................................52
第一章 问题定义
1.问题定义
开发一款个性化的 Android 平台智能手机防火墙来解决这些问题,它可进行
流量,来电、短信的拦载和过滤,对于广告短信人们可以一封都不收,用它的短
信过滤条件设置相关过滤,可让这些广告短信全部不见;同时还可以根据拦载记
录来查询相关拦载的信息及内容。
2.系统要解决的问题
(1)对 android 手机网络流量进行控制;
(2)对陌生手机电话号码进行拦截,防止电话搔扰;
(3)对陌生电话的短信进行拦截,防止陌生号码搔扰;
(4)手机流量计费;
(5)手机任务栏进行管理。
1
第二章 可行性研究报告
1 引言
1.1 编写目的
编写本报告的目的是研究本系统的总体需求、实现方案,并分析开发系统的
可行性,为决策者提供是否开发该系统的依据和建议。
1.2 背景
(1)开发软件名称:android 手机防火墙设计与实现
(2)项目开发小组成员:肖克珑
(3)用户:各 Android 平台手机用户;
(4)项目开发环境:eclipse+ADT
1.3 定义
文件中用到的专门术语的定义和外文的首字母组词的原词组如下:
(1)ANDROID:Android 是基于 Linux 开放性内核的操作系统,是 Google
公司在 2007 年 11 月 5 日公布的手机操作系统。早期由原名为"Android"的公司
开发,谷歌在 2005 年收购"Android.Inc"后,继续对 Android 系统开发运营,它采
用了软件堆层(software stack,又名软件叠层)的架构,主要分为三部分。底层
Linux 内核只提供基本功能,其他的应用软件则由各公司自行开发,部分程序以
Java 编写。
(2)ANDROID SDK:SDK (Software Development Kit),中文即“软件开发
工具包”。广义上指辅助开发某一类软件的相关文档、范例和工具的集合。Android
SDk 指的既是 Android 专属的软件开发工具包。与 iPhone 相似,Android 采用
WebKit 浏览器引擎,具备触摸屏、高级图形显示和上网功能,用户能够在手机
上查看电子邮件、搜索网址和观看视频节目等,比 iPhone 等其他手机更强调搜
索功能,界面更强大,可以说是一种融入全部 Web 应用的单一平台。
(3)Linux: 是一类 Unix 计算机操作系统的统称。该操作系统的核心的名
字也是“Linux”。Linux 操作系统也是自由软件和开放源代码发展中最著名的例
子。
1.4 参考资料
[1] 张海 藩.软件工程导论(第5版)[M].清华大学出版社,2008年2月.
[2] 窦万峰.软件工程方法与实践[M].机械工业出版社,2009年5月.
[3] 窦万峰.软件工程实验教程[M].机械工业出版社,2009年5月.
2
[4] 王华.软件工程实验与课程设计指导[M].电子工业出版社,2008年6月.
[5] 张海藩.软件工程导论[M].人民邮电出版社,2006年1月.
2 可行性研究的前提
引言 A n d r o i d 手机操作系统是 G o o g l e 公司在 2007 年 11 月研发完成
了基于 L i n u x 的手机操作系统,它是一个真正意义上的开放的移动设备开发平
台。Android 手机平台由 Google 与开放式的手机联盟 Open Handset Alliance(O
H A)联合开发。正是由于其开源性,使得在第三方软件开发商的门槛降低了很
多,也使得 A n d r o i d 从刚刚推出时就受到了很多开发者的关注。通过其特有
的 D a l v i k 虚拟机使得程序在手机上运行的效率更高。更是由于其免费与开源
性,就让 A n d r o i d 能够不仅仅局限于手机上,而是更广阔的笔记本电脑或者
其他智能设备之上。所以 Android 的应用于开发的前景无法限量。但是由于用户
通过手机访问网络的需求日益增加, 手机网络通信的安全性也就成为手机安全
研究的首要任务。防火墙是桌面操作系统中常用的一种网络安全解决方案。由于
网络通信的相似性, 智能手机通信中所存在的不安全因素, 也完全可以通过防火
墙相关技术来解决。本文基于对前年刚推出的 A n d r o i d 手机操作系统和智能
手机网络通信安全的研究, 结合传统防火墙解决方案提出了该平台下的防火墙
设计模型, 并对其具体实现进行了详细的论述。
2.1 要求
2.1.1 主要功能
(1)对 android 手机网络流量进行控制,防止非法程序使用流量,给用户节
省流量。
(2)对陌生手机电话号码进行拦截,防止电话搔扰。
(3)对陌生电话的短信进行拦截,防止陌生号码搔扰。
(4)手机流量计费,提醒用户使用的流量费用。
(5)手机任务栏进行管理,对手机安装的软件进行管理。
2.1.2 主要性能
(1)耗电量要低。
(2) 手机的操作符合一般用户的体验。
(3)手机软件的启动速度不能超过用户所能承受的范围。
(4)手机来电拦截要在系统处理来电之前。
2.1.3 安全性
具有较高手机全性。系统对不同的用户提供不同的功能模块,只有具有一定
3