zoukankan      html  css  js  c++  java
  • 项目报告(最终版)

    简单聊天系统项目报告

       二十一世纪将是信息化、网络化的年代,以简捷、快速为代表的即时通讯工具,已经成为当前网络用户最喜爱的沟通工具。2007年11月,Google推出了一个专为移动设备设计的软件平台——Android。Android手机平台的应用正是在这种需求中不断发展壮大。Android应用用需求的增加,已经吸引无数软件开发厂商投身其中,Android的开放性使其比苹果、黑莓、windows等对年轻人更具吸引力,同时Android还具有应用程序无界限、应用程序轻松嵌入网络、应用程序可并行运行等众多出色的品质,使其具有其他于机平台无法比拟的优势和发展空削。近两年,移动端的应用不断深入日常生活,2015天猫“双11”全球狂欢节交易额超912亿元,其中移动端占比 68% 。再创历史新高。结合现有资料,作为一个Android平台开发的初学者,本次选择完成一个基于Scocket通信的简单聊天软件的实现。

    一、项目简介

    1.1 Adroid性能特点

    (1)开放源代码
       Android平台开放源代码是它的主要优势之一,任何移动终端厂商都可以不受限制的加入到Android联盟中。显著的开放性吸引了众多优秀的开发者加入联盟,随着日益丰富的应用和用户人数的不断增加,一个崭新的平台日臻成熟。
    (2)自由的开发商
       Android平台为第三方开发商提供了一个非常白由、宽泛的环境。开发商因此不会受到各种条款的制约,这样促使了众多别致新颖的软件诞生,软硬件资源变得无限丰富。但其也存在缺点,比如暴力、血腥、情色等不利于青少年健康成长的游戏和程序同时应运而生,如何解决这类负面影响正是留给Android系统一大难题。
    (3)Goog1e应用的完美结合
       Google公司发展到现在已经走过10余年历史。从最初的搜索引擎到全面互联网的应用,Google服务如邮件、搜索、地图等已经成为连接互联网和用户的重要桥梁,而这些优秀的Google服务可以完美的结合到Android 平台手机上。

    1.2 实验环境

       JDK 1.8+ ADT + Eclipse

    二、 需求分析

    2.1 功能需求

      本项目是简单的聊天系统的实现,预期所具备的的功能有用户注册和登陆功能以及及时聊天功能。

    2.2 性能需求

      能够在真机上以软件方式运行,且运行速率不能过慢。

    2.3 预期未来需求

      查找添加功能:能够通过账号查找好友,并进行添加;
      分组功能:能够对好友进行分组,便于快速查找好友;
      群聊功能:可以将多个好友拉入群,开启多人聊天模式。

    2.4 需求类图

    2.5 用户UI设计

    UI设计流程图:

    UI原型设计:(具体动态效果需要参考Axure文件)


    三、系统设计

    3.1 Socket通信基础

      socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过"套接字"向网络发出请求或者应答网络请求。
      Socket和ServerSocket类库位于java.net包中。ServerSocket用于服务器端,Socket是建立网络连接时使用的。在连接成功时,应用程序两端都会产生一个Socket实例,操作这个实例,完成所需的会话。

    服务器:
      使用ServerSocket监听指定的端口,等待客户连接请求,客户连接后,会话产生;在完成会话后,关闭连接。

    客户端:
      使用Socket对网络上某一个服务器的某一个端口发出连接请求,一旦连接成功,打开会话;会话完成后,关闭Socket。
      0~1023的端口号为系统所保留,例如http服务的端口号为80,telnet服务的端口号为21,ftp服务的端口号为23, 所以我们在选择端口号时,最好选择一个大于1023的数以防止发生冲突。

    3.2 C/S模式下的Scocket通信

      本聊天系统,采用客户机/服务器(C/S)体系结构,C/S结构包括一个客户端和一个服务器。在Intemet通信中,使用TCP面向连接的套接字来建立服务器端和客户端两个IP地址端点之间的会话。如下图所示:

      服务器端主要完成用户信息的存储、客户端命令的响应与接受、信息转发等功能。客户端主要完成登录、聊天信息的接受及发送等功能。客户端必须在服务器启动以后才能连接成功,用户登录以后聊天室的客户端会显示用户已登录,可以与服务器进行即时聊天。

    四、实现

    登陆界面

    聊天界面

    五、系统测试

    5.1 功能测试

    经测试,登陆功能完善,注册、聊天功能还存在小问题。

    5.2 测试用例

    六、 总结

      项目报告阐述了在Android应用程序架构下简易聊天系统的开发过程,实现了Android系统聊天室的注册、登陆和聊天功能。但由于系统本身的复杂性,对很多可能出现异常的情况没有处理,存在一定的欠缺。在后续的修改完善中,方便用户的再次登陆,在服务器端可以通过SQL数据库,保存注册用户的用户名,密码和各个用户的聊天记录,以便能够实现往用户注册或登录时检查相应的情况。最后,本系统的界面最后来自于QQdemo,可以自己对UI做美化,以达到最佳效果。

    代码托管在开源中国Github,欢迎各位指正 代码托管

  • 相关阅读:
    javascript定义变量和优先级的问题
    css expression explaination
    apply()与call()详解
    jquery $(document).ready() 与window.onload的区别
    ES5严格模式
    css margin collapse
    作业 20181016-10 每周例行报告
    作业 20181009-9 每周例行报告
    作业 20180925-1 每周例行报告
    20180925-7 规格说明书-吉林市2日游
  • 原文地址:https://www.cnblogs.com/20159212yx/p/5023721.html
Copyright © 2011-2022 走看看