# 基于Android网络聊天室的设计与实现
# 前 言
随着我国科技水平的提高和移动通讯的飞速发展与普及,人们通过移动网络可做的事情越来越多,人们之间的沟通不在局限于面对面的对话,人们通过手机可以很方便的上网并通过手机上的APP进行聊天这样既节省话费开支又方便快捷。并且在信息时代的今天,相对与手机号频繁更改,人们的网络软件账号相对固定。因此使用移动聊天程序进行沟通交流更有助于人们之间保持长久固定的联系。
本设计通过配置AndroidSDK、Eclipse、ADT插件、java-jdk来搭建Android的运行环境和Android程序开发过程中可以使用其自带的内嵌的SQLite数据库来实现程序的结构化数据存储,能够实现用户的一对一的聊天功能,在Android手机平台上实现聊天满足文字、图片、语音的实时收发。聊天程序包括手机客户端和服务端两部分,服务端程序利用数据库保存用户的信息,客户端实现各功能的展现界面,并实现与服务端以及聊天对象客户端之间的通信,本程序利用StartUML工具,进行统一建模并进行系统用例模型的设计,进而完成移动聊天程序。
**关键词**:移动聊天程序;Android;JAVA语言
# 第一章 绪论
## 1.1 产生背景
由于我国科技水平的提高和移动通讯的飞速发展与日益普及,人们通过网络可做的事情越来越多,我们通过网络浏览新闻,玩游戏,通过网络进行购物,通过即时通讯工具和朋友进行沟通交流,轻松地办理各种网上银行业务,网上基金买卖等等。
信息化之后,人们不再通过打电话进行交流,对于时代发展迅速的今天,人们的手机号码的变换频率日益加快,而网络账号却相对固定。有时候出差高额的漫游费用让人们很是头疼。人们迫切需要一种能够替代手机电话的东西来进行彼此之间的交流。这种东西包含以下优点:
- 可以在手机上使用方便快捷
- 可以离线发送消息不丢失
- 流量耗费小节省费用
# 1.2 移动聊天程序产生的意义
众所周知,Android操作系统是免费的并且是完全开源,这是Android操作系统之所以倍受欢迎的原因之一。Android操作系统包括系统内核、中间件、一些非常关键的必须的和普遍的平台应用程序。Android的操作系统将优秀的Linux系统经过进一步的优化,使其适应于移动平台应用,Android操作系统应用层的开发采用当今最为流行的编程语言Java,他是一个面向对象的编程语言。它允许厂商和个人,对基于Android操作系统的软件源码进行修改和个性化定制开发。根据调查所得相关资料显示,我国目前使用手机上网的人数超过三亿。而目前手机操作系统中Android占据着很大的市场,而在使用移动终端手机上网的手机应用程序中,移动聊天软件是使用频率最高的应用程序高达70.4%。追根溯源,在电话、电子邮件、移动聊天软件等通讯方式中,移动聊天软件是实时性最强、并且方便快捷、效果也是最好的一种通讯方式。移动聊天软件可以降低人们之间交流沟通的成本、并且很大程度上提高沟通的效率,从而避免在打电话上耗费大量金钱与时间,使人与人之间跨越时空进行即时交流通讯,真正实现沟通无界限。由此可见智能手机终端上移动聊天软件在移动互联网中扮演着重要角色。
## 1.3 技术路线
Android的上层应用程序的开发是在Eclipse开发环境中进行的,运用Java语言开发,同时还需要基于Android虚拟机。并且安装JDK、SDK、ADT等插件。
### 1.3.1 Eclipse
Eclipse作为一种开发工具是一个源代码开放的并且基于Java语言的扩展开发平台。对于Eclipse本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。尽管Eclipse是使用Java语言开发的,但是它的使用并不局限于Java语言;他支持诸如C/C++、COBOL和Eiffel等编程语言的插件都可用。
### 1.3.2 SDK
SDK既software developmentkit中文名称为软件开发工具包。被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。Android SDK指的是Android专属的软件开发工具包。
下载好Android SDK后,开始安装,Android SDK采用了Java语言,所以需要先安装JDK,在这里我安装的是JDK1.7。直接下载jdk安装文件安装更为方便。
Android SDK不用安装,下载后,直接解压即可,将下载后的SDK的压缩包解压到适当的位置,就这么简单;SDK安装OK。
使用Eclipse进行Android应用开发需要给Eclipse装ADT插件,这样Eclipse就可以和AndroidSDK进行连接,可以在Eclipse中启动Android模拟器进行程序调试等ADT插件安装这里不再赘述,也可以下载ADT的zip包安装安装完插件后,需要做一些简单的配置:
- 在Eclipse中,选择Window-->Preference;2、从左侧的菜单中,选择Android项
- 设置SDKLocation,点Browse选择SDK的安装根目录
# 第二章 项目开发计划书
## 2.1 项目成果
| 序号 | 内容 | 需求 | 计划时间 | 实际时间 | 状态 |
| ---- | ------ | -------------------- | ---- | ---- | ---- |
| 1 | 图形界面 | 展示给用户 的可视化、可操作的图形界面 | 5天 | 7天 | 达到需求 |
| 2 | 客户端模块 | 实现系统业 务逻辑。 | 10天 | 15天 | 达到需求 |
| 3 | 服务器模块 | 实现数据的 传递 | 10天 | 14天 | 达到需求 |
| 4 | 语音通话模块 | 实现用户之 间语音通话 | 5天 | 6天 | 达到需求 |
| 5 | 文件传输模块 | 实现用户之 间传输文件 | 6天 | 5天 | 达到需求 |
## 2.2 资源需求
| 序号 | 资源 | 作用 | 占用时间 | 当前可用状态 | 获得途径 |
| ---- | ------------- | ------------------ | ------------------- | ------ | ----- |
| 1 | Eclipse 开发环境 | 基于Java语 言的扩展开发平台。 | 贯穿整个 项目的构造阶段、走查过程中 | 可用 | 下载、安装 |
| 2 | PC机 | 提供了编码界面的操作 | 贯穿整个 项目的构造阶段、走查过程中 | 可用 | 购买 |
| 3 | SDK | 软件开发工具 包。 | 贯穿整个 项目的构造阶段。 | 可用 | 下载、安装 |
| 4 | ADT | 提高开发效率 | 贯穿整个 项目的构造阶段。 | 可用 | 下载、安装 |
| 5 | WIFI | 通信前提条件 | 后期软件 通信、测试 | 可用 | 建立 |
# 第三章 系统需求分析
## 3.1 功能需求分析
本系统平台的开发宗旨以及总体任务就是要实现一对一的聊天功能,在手机平台上实现文字、图片、语音的实时发送、接收。聊天程序包括手机客户端和服务端两部分,服务端程序保存用户信息,以及用户间的好友关系,客户端实现各功能的展现界面,并实现与服务端以及聊天对象客户端之间的通讯。根据对用户需求调查,总体需求是对于普通用户能够实现一对一的聊天功能。
下面是基于Android平台的移动聊天程序的需求说明的具体文本,要求系统具有以下功能:
- **好友界面**:查看好友信息,选择好友进行聊天,会话列表框
- **聊天界面**:你能够实现文字、图片、语音、文件的收发
## 3.2 系统用例图
![](http://www.writebug.com/myres/static/uploads/2021/10/19/e6c433fc6747bc1b0a6bccdbac1aaa7e.writebug)
在用例图中可以看出�