概要设计基于安卓手持设备的语音通讯系统大学论文.docx

上传人:b****3 文档编号:24721546 上传时间:2023-05-31 格式:DOCX 页数:18 大小:134.06KB
下载 相关 举报
概要设计基于安卓手持设备的语音通讯系统大学论文.docx_第1页
第1页 / 共18页
概要设计基于安卓手持设备的语音通讯系统大学论文.docx_第2页
第2页 / 共18页
概要设计基于安卓手持设备的语音通讯系统大学论文.docx_第3页
第3页 / 共18页
概要设计基于安卓手持设备的语音通讯系统大学论文.docx_第4页
第4页 / 共18页
概要设计基于安卓手持设备的语音通讯系统大学论文.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

概要设计基于安卓手持设备的语音通讯系统大学论文.docx

《概要设计基于安卓手持设备的语音通讯系统大学论文.docx》由会员分享,可在线阅读,更多相关《概要设计基于安卓手持设备的语音通讯系统大学论文.docx(18页珍藏版)》请在冰豆网上搜索。

概要设计基于安卓手持设备的语音通讯系统大学论文.docx

概要设计基于安卓手持设备的语音通讯系统大学论文

 

基于安卓手持设备的语音通讯系统

概要设计

 

总页数

正文

附录

生效日期

编制

批准

修改履历

修改编号

日期

修改人

版本号

修改内容

1

VER0.1.0

初始做成

2

3

目录

1文档概述5

1.1文档目的和范围5

1.2术语/缩略语5

1.3参考文档5

2模块概述6

2.1模块功能定义6

2.2模块结构6

2.3模块动作时序9

3接口说明9

3.1数据结构定义9

3.2函数9

3.2.1模块间接口函数11

3.2.2模块内接口函数11

1文档概述

1.1文档目的和范围

本设计的目标为运用可视化程序设计和数据库产品开发一个基于安卓手持设备的语音通讯系统。

1.2术语/缩略语

序号

术语/缩略语

说明

1

Android

安卓操作系统

2

Mysql

Mysql开源数据库

1.3参考文档

序号

文档名

作者

时间

版本

1

Java程序设计实用教程[M]

耿祥义,张跃平

2010年4月

人民邮电出版社

2

Android开发应用从入门到精通[M]

朱桂英

2011年

第1版.中国铁道出版社

3

Android开发从入门到精通[M]

扶松柏,于秀青

2012年

北京希望电子出版社

4

Android移动应用开发从入门到精通[M]

ShaneConder

2010年

人民邮电出版社

5

Thinkinginjava[M]

埃克尔

2007年

机械工业出版社

6

Java入门经典[M]

CadenheadR

2012年

人民邮电出版社

7

软件工程导论[M]

张海藩

2008年2月

清华大学出版社

2模块概述

根据系统的主要功能分类,语音通讯系统可以分为用户信息管理模块、语音通信模块和文本通信模块三大模块。

其中用户信息管理模块负责管理用户的个人信息和用户的好友;语音通信模块用于使用户间能够自由进行语音聊天;文本通信模块完成用户间的文字聊天功能。

系统将根据这三个模块组织代码结构。

2.1模块功能定义

序号

功能点

功能点详细内容

1

Login登录

控制用户登录相关操作

2

Regedit注册

控制注册相关界面操作

3

添加好友

添加以为好友

4

删除好友

删除一位好友

5

语音采集

调用安卓MediaRecorder录制声音

6

语音传送

将采集到的语音发送出去

7

语音接受

接受发来的语音消息

8

文字采集

接受文字消息

9

文字传送

发送文字消息

10

文字接受

接受文字消息

11

Connect服务器

通过HttpConnect类链接服务器进行操作

12

数据库操作

对数据库的数据进行增删改操作

2.2模块结构

2.2.1子系统/模块说明

根据功能的不同,可以把语音通讯系统划分为三大模块——用户信息管理模块、语音通信模块、文本通信模块。

三大功能模块构成整个语音通讯系统,使之正常运行。

图2-1为用户信息模块功能结构图。

图2-1用户信息管理功能结构图

第一次使用系统的用户需要注册账号,注册账号后才可登录系统与好友通讯。

用户登录系统后可以修改自己的个人信息,也可以对好友进行管理,包括添加、删除好友。

添加的好友只能是已经注册的并且已经在局域网内的。

点击某个好友可以查看其详细信息。

如果用户觉得账号不安全,可以修改自己的密码,增加账号安全性。

图2-1为语音通信模块功能结构图。

图2-2语音通信功能结构图

系统检测为有权限的用户方可与好友进行通讯。

在聊天界面,用户可以选择语音聊天也可以选择文字通讯。

若用户选择语音聊天,用户的amdroid客户端将录制下用户的声音文件,声音文件流发送到服务器端。

服务器将检测对方用户是否在线,如果对方在线,即解析出流对象,根据流对象中的内容将文件流发送到指定IP与端口号的其他安卓的客户端,然后在指定的手机客户端解析传递过来的声音文件,转化成音频文件,调用客户端相关硬件播放出来。

图2-3为文本通信功能结构图。

图2-3文本通信功能结构图

文本通信模块的运行原理与语音通信模块类似,若用户选择文字通讯,用户的amdroid客户端将接收用户的文字信息,然后将其发送到服务器端。

服务器将检测对方用户是否在线,如果对方在线,即解析出字节流对象,根据流对象中的内容将流对象通过TCP/IP协议发送到指定IP与端口号的其他安卓的客户端,然后在指定的手机客户端解析传递过来的字节流,转化成文字显示到客户端。

若对方不在线,则将消息缓存在服务器,当对方下次上线被服务器检测到时再将消息推送过去。

但文字通讯没有对音频的解析过程,相对来说更简单一些。

2.2.2功能需求描述

系统以C/S模式实现。

图2-4为客户端系统功能结构图。

图2-4系统功能结构图

服务器端与数据库相连,主要负责保存用户信息和用户聊天信息并且分析数据包将其发送到相应IP端口。

客户端系统功能结构如上图所示,用户必须先注册为系统用户后才能使用系统进行通讯。

注册为用户后可以对自己的信息进行管理,也可以开始搜索局域网内好友(好友必须为注册用户),有好友后可以进行语音文字通信。

出于某些原因也可以删除不需要的好友,好友将从好友列表消失。

模块名称

模块类型

概要说明

LoginActivity

接口

控制用户登录操作

RegisterActivity

接口

控制注册界面注册操作

Record

内部模块

采集、发送、接受语音消息

VoiceChatChatActivity

内部模块

接受、发送、采集文字消息

2.3模块动作时序

3.2.1语音通信模块功能流程图

图3-1通信模块功能流程图

3.2.2文本通信模块功能流程图

图3-2文本通信模块功能流程图

3.2.3用户信息管理功能流程图

图3-3用户信息管理功能流程图

3接口说明

3.1数据结构定义

3.1.1

用户信息数据结构

publicclassUser{

privateStringuserName;//用户名

privateStringalias;//别名(若为pc,则是登录名)

privateStringgroupName;//组名

privateStringip;//ip地址

privateStringhostName;//主机名

privateStringmac;//MAC地址

privateintmsgCount;//未接收消息数

}

消息数据结构

publicclassChatMessage{

privateStringsenderIp;//消息发送者的ip

privateStringsenderName;//消息发送者的名字

//privateStringreciverIp;//消息接收者的ip

privateStringmsg;//信息内容

privateDatetime;//发送时间:

格式:

privatebooleanselfMsg;//是否自己发送

}

3.1.2

publicinterfaceMIsym{

//StringSEVERIP="192.168.1.100";

//StringSEVERIP="171.34.115.178";

//StringSEVERIP="192.168.1.105";

StringSEVERIP="192.168.43.102";

//StringSEVERIP="192.168.42.229";

//StringSEVERIP="10.0.2.2";//服务器IP地址应该是本地才对

//StringSEVERIP="10.16.25.171";//服务器IP地址

intSEVERPORT=30001;//服务器端口号

intPROTOCOL_LEN=2;//字符串长度

StringMSG_MI="╔╗";//标识聊天信息

StringNAME_REP="┠┨";//表示用户名重复

StringLOGIN_SUCESS="卐Ψ";//标识登录成功

StringUSER_LOG="§∮";//表示用户登录

StringUSER_REG="ξω";//表示用户注册

StringPSD_WRONG="⊙●";//表示密码错误

StringUSER_NO="★☆";//表示用户名不存在

StringdOWN_MI="〓≡";//表示文件下载请求

StringReg_Fail="reg_fail";///注册失败

Stringupdate_info="update_info";///用户修改个人信息

Stringupdate_info_success="update_info_success";///修改信息成功

Stringupdate_info_fail="update_info_fail";///修改信息失败

Stringgetinfo_byUserName="getinfo_byUserName";///在修改个人信息时,要根据名字得到所有信息

Stringback_userInfo="back_userInfo";///返回用户的个人信息

Stringupdate_password="update_password";

Stringupdate_password_success="update_password_success";

Stringupdate_password_fail="update_password_fail";

Stringupdate_password_fail_OldPwdErr="update_password_fail_OldPwdErr";///原来的密码输入有误

}

3.1.3

/*

*一些用到的常量

*

*/

publicclassUsedConst{

publicstaticfinalintFILESENDSUCCESS=0xFF;//文件发送成功

publicstaticfinalintFILERECEIVEINFO=0xFE;//接收文件,包含文件信息

publicstaticfinalintFILERECEIVESUCCESS=0xFD;//接收文件成功,包含文件信息

publicstaticfinalintFILERECEIVEVOICE=0xFC;//接收语音文件

publicstaticfinalintFILERECEIVESENTVOICE=0xFB;//发送语音文件

}

3.2函数

3.2.1模块间接口函数

3.2.1.1onCancelled()

函数名

onCancelled

文件名

LoginActivity.Java

功能概要

取消登录

记述形式

protectedvoidonCancelled()

参数

类型

变量名

I/O

说明

-

-

-

-

返回值

类型

-

说明

-

-

-

-

详细说明

取消登录

使用注意事项

3.2.1.2onLogin(finalBooleansuccess)

函数名

onLogin

文件名

LoginActivity.Java

功能概要

登录

记述形式

protectedvoidonLogin(finalBooleansuccess)

参数

类型

变量名

I/O

说明

Boolean

success

I

数据正确

返回值

类型

-

说明

-

-

-

-

详细说明

用户登录

使用注意事项

3.2.1.3onCancelled()

函数名

onCancelled

文件名

RegisterActivity.java

功能概要

取消注册

记述形式

protectedvoidonCancelled()

参数

类型

变量名

I/O

说明

-

-

-

-

返回值

类型

-

说明

-

-

-

-

详细说明

用户取消注册

使用注意事项

3.2.1.4onRegister(finalBooleansuccess)

函数名

onRegister

文件名

RegisterActivity.java

功能概要

注册

记述形式

protectedvoidonRegister(finalBooleansuccess)

参数

类型

变量名

I/O

说明

Boolean

success

I

数据是否正确

返回值

类型

-

说明

-

-

-

-

详细说明

用户注册

使用注意事项

3.2.2模块内接口函数

3.2.2.1onRecord()

函数名

onRecord

文件名

Record.java

功能概要

采集语音

记述形式

publicvoidonRecord()

参数

类型

变量名

I/O

说明

-

-

-

-

返回值

类型

-

说明

-

-

-

-

详细说明

开始采集语音信息

使用注意事项

3.2.2.2StopRecord()

函数名

StopRecord

文件名

Record.java

功能概要

停止采集语音

记述形式

publicvoidStopRecord()

参数

类型

变量名

I/O

说明

-

-

-

-

返回值

类型

-

说明

-

-

-

-

详细说明

结束采集语音信息

使用注意事项

3.2.2.3getPath()

函数名

getPath

文件名

Record.java

功能概要

获取语音信息路径

记述形式

publicStringgetPath()

参数

类型

变量名

I/O

说明

-

-

-

-

返回值

类型

-

说明

-

-

-

-

详细说明

获取语音信息路径,以供消息发送

使用注意事项

3.2.2.4sendAndAddMessage()

函数名

sendAndAddMessage

文件名

VoiceChatChatActivity.java

功能概要

发送消息

记述形式

privatevoidsendAndAddMessage()

参数

类型

变量名

I/O

说明

-

-

-

-

返回值

类型

-

说明

-

-

-

-

详细说明

将消息发送出去

使用注意事项

3.2.2.5receive(ChatMessagemsg)

函数名

receive

文件名

VoiceChatChatActivity.java

功能概要

接受消息

记述形式

publicbooleanreceive(ChatMessagemsg)

参数

类型

变量名

I/O

说明

ChatMessage

msg

I

消息的数据结构

返回值

类型

boolean

说明

TRUE

接受成功

FALSE

接受失败

详细说明

接受其他用户或系统消息

使用注意事项

3.2.2.6finish()

函数名

finish

文件名

VoiceChatChatActivity.java

功能概要

消息发送完成

记述形式

publicvoidfinish()

参数

类型

变量名

I/O

说明

-

-

-

-

返回值

类型

-

说明

-

-

-

-

详细说明

消息发送完毕后,清理一些不必要的数据

使用注意事项

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1