1、 课程设计报告课程设计报告 课程设计题目: Android 聊天室 学 院: 计算机学院 专业班级: 网络工程 2 班 年 级: 2009 级 姓 名: x x x 学 号: 完成时间: 2012 年 7 月 5 日 成 绩: 指导教师: 摘要摘要 本次课程设计是以嵌入式系统课程和理论知识为基础, 通过课程 设计的实践,培养学生理论联系实际的思想,加强学生对所修相关课 程的理解、掌握,训练并提高学生 Android 应用软件的设计、编程能 力,独立解决问题的思路。 此系统设计了一个基于 Android 系统与 PC 之间的通信,采用 Socket 流式套接字进行网络通信。其中 Android
2、系统的模拟器作为 客户端,客户端采用获取手机号码作为该客户端的唯一标识,PC 作 为服务器端。依据 Android 应用程序的仿真器,我们实现了多个应用 客服端及服务器端的通信,其中,客服端之间可以相互进行单独的文 本通信(私聊) ,也可以进行群聊。同时,客服端也可以进行文件的 传输。 关键词:Android;Socket 通信;私聊;群聊;文件传输 目录目录 一、聊天室的描述 1 1.1 聊天室的设计背景 1 1.2 聊天室的基本功能 1 二、聊天室的设计 2 2.1 聊天室的粗略设计分析 . 2 2.2 聊天室的具体设计分析 . 3 三、聊天室的实现 6 3.1 聊天室所使用的类及功能的实
3、现 . 6 四、运行结果36 五、课程设计存在问题、解决方法及总结43 5.1 系统存在的问题 .43 5.2 系统改进方法 43 53 总结.44 六、 参考文献 44 课设题目:Android 聊天室 1 一、聊天室的描述一、聊天室的描述 1.1 聊天室的设计背景 当今社会, 网络技术越来越发展, 可以说, 二十一世纪就是网络的世纪。 网络迅猛发展, 势不可挡。为了实现资源共享,各式各样的网站发展迅速,各种各样的聊天工具不断更新。 所以制作一个聊天室势在必行。 为了实现一个更好的网络交互平台, 各用户之间能够实时方便的传递信息, 按照用户对 系统的要求不同,可以在聊天室里实现公共聊天,也可
4、以邀几个私交好友私聊,同时提供了 两个用户之间能够传送文件。本系统是基于方便用户聊天,传递信息,共享资源,所以系统 的功能主要是从以上几个模块着手。 本项目主要是利用 Android 制作一个聊天室,采用的是客户/服务器。 二层的 C/S 结构是 指以单一的服务器和局域网为核心,能通过客户端与用户进行直接对话。主要有二大功能: 一是它用于检查用户从键盘等输入的数据, 显示应用输出的数据。 为使用户能直观地进行操 作,一般要使用图形用户接口,操作简单、易学易用。在变更用户接口时,只需改写显示控 制和数据检查程序,而不影响其他。检查的内容也只限于数据的形式和值的范围,不包括有 关业务本身的处理逻辑
5、。典型的 C/S 结构有以下特点: 1、服务器负责数据管理及程序处理。 2、客户机负责界面描述和界面显示。 3、客户机向服务器提出处理要求。 4、服务器响应将处理结果返回客户机。 5、使网络数据流量最少。 1.2 聊天室的基本功能 1. 用户注册 2. 用户登录 3. 用户公聊 4. 用户私聊 5. 传输文件 用户注册 第一次用户需要提供个人注册信息,注册的用户名不能重复,个人信息必须提供完整。 用户登录 用户输入用户名和密码,提交给将服务器端的确认,根据从服务器中传过来的确认信息, 判断用户登录的情况。并且把此次登录的时间及登录的 IP 记录在服务器。 如果用户名和密码正确的话,则登录聊天室
6、主界面;如果已经在线,则输出已经在线;否则 输出用户名和密码错误,需要重新登录或者注册。 课设题目:Android 聊天室 2 用户公聊 用户输入的用户名和密码都正确后,则进入聊天室。聊天主界面主要由四大版块组成: 公聊的聊天信息、在线用户列表、系统消息和聊天的一些操作。 用户私聊 如果两个人聊的话题比较隐秘,不想被其他人看到,就要使用私聊。在这里,如果说话 对象是所有人的话,不能选择私聊;从当前好友列表中选择了一个用户之后,则私聊对话框 应该弹出来。 文件传递 两个用户在聊天过程中, 可能需要相互间传送文件。 象用户聊天信息和在线用户这样一 些信息都是保存在服务器端, 然后每个客户读取服务器端向量中的内容, 此时服务器与客户 端的联系是一对多的,而传送文件是一对一的。所以直接传送,不需要经过服务器端保存。 二、聊天室的