版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于An droid平台的百度云推送聊天交友 APP勺设计与实现毕业论文 目录 摘要 IV Abstract V 第一章绪论 1 1.1研究背景 1 1.2国外应用现状 2 1.3研究的目的和主要容 2 1.4论文结构 3 1.5小结 4 第二章开发环境及技术简介 5 2.1数据库技术 5 2.2 JAVA语言的简介 5 2.3 An droid平台的简介 6 2.4百度云推送的简介 6 2.5小结 8 第三章可行性分析和需求分析 9 3.1编程与运行环境 9 3.1.1系统开发环境 9 3.1.2系统运行环境 9 3.2可行性分析 9 3.2.1 技术可行性 10 3.2.2 经济可行性 1
2、0 3.2.3操作可行性 10 3.3需求分析 10 3.3.1 功能需求 11 3.3.2用例分析 12 3.3.3性能需求与非功能需求 19 3.3.4 用户或人的因素 19 3.4小结 20 第四章系统设计 21 4.1总体设计 21 4.1.1系统设计指导思想及原则 21 4.1.2系统功能设计 21 4.2详细设计 23 4.2.1系统流程 23 4.2.2 接口设计 26 4.3运行设计 27 4.3.1主要模块实现逻辑 27 4.3.2出错处理设计 30 4.4数据库设计 30 4.4.1 逻辑结构设计 30 4.4.2 E-R 图 30 4.4.3数据库物理设计 33 4.5小
3、结 35 第五章系统的功能实现 36 5.1 APP首页模块的实现 36 5.2个人信息设置管理模块的的实现 37 5.3好友信息管理模块的的实现 40 5.4通信聊天模块的的实现 43 5.5好友推荐模块的的实现 44 5.6小结 47 第六章系统的测试与维护 48 6.1测试方法 48 6.2单元测试实例 48 6.3系统维护 49 6.4小结 50 第七章总结与展望 51 7.1总结 51 7.2展望 51 参考文献 53 致谢 54 .参考资料. 基于Android平台的百度云推送聊天交友APP的设计与实现 摘要 随着经济与科技高速发展,手机的用户量越来越多,几乎每一个人的手中 都有一
4、个手机,手机已经成为了人们聊天交友、上班查资料和学习中必不可少的 东西,而各个年龄段的手机用户的最优先选择是An droid智能手机,An droid智 能手机的使用量在各地区手机用户中占了很大的比重。众所周知,手机的一个重 要而且是重中之重的功能就是聊天,聊天不仅仅只局限于和短信,还有即时通讯 手机端APP应用也越来越广泛,人们可以借助一种聊天交友APP实现与家人、朋 友、同学以及同事等人之间进行通信对话。 本文旨在设计并实现一个基于 An droid平台的百度云推送聊天交友 APP 本文在腾讯QQW天和微信聊天客户端进行调查研究的基础上,采用软件工程项 目开发过程的管理方法,依次进行了可行
5、性分析、需求分析和系统设计,进一步 完成代码的编写,在eclipse中使用Java语言实现了百度云推送聊天交友 APP 各个功能模块,APP的IM通信部分基于第三方百度云 SDK进行开发。实现了 An droid平台上通过百度云推送信息的聊天交友通讯系统。 基于An droid平台的百度云推送聊天交友 APP经过后期的测试运行,结果 表明,系统已经完成了用户注册、登录,好友的查找、添加、删除,推荐具有共 同兴趣爱好的好友、好友聊天、群聊天等功能。与此同时,在用户之间进行信息 交互时,该通讯系统都能够很顺畅的运行。 关键词: An droid ;即时通讯;百度云;智能手机 Desig n and
6、 impleme ntati on of the An droid platform Baidu cloud-based push chat with frie nds APP Abstract with the rapid developme nt of economy and tech no logy, mobile pho nes have becomethe waypeople live, work and lear n esse ntial tool, and An droid smart phones has become a vast majority of adolescent
7、s, young and middle-aged choice. As we all know, a major cell phone and is the most importa nt feature is the chat, chat not just limited to calls and text messages, and in sta nt messagi ng APP mobile clie nt applicati ons are more widely used, people can achieve by means of a chat with friends APP
8、among family, frien ds, classmates and co-workers and others to com muni cate with dialogue. This paper aims to desig n and impleme nt a cloud-based An droid platform Baidu push datingchat APP.In this paper, Tencent QQ chat and micro-cha nnel chat clie nt is the basis of inv estigati on on the use o
9、f software project man ageme nt methods, requireme nts an alysis and system desig n, complete further UI in terface desig n, using the Java Ian guage to implement Baidu cloud push chat in eclipse Dating APPvarious functional modules, IM com muni cati on sect ion APP Baidu cloud-based third-party SDK
10、 for developme nt. Realized on the An droid platform through Baidu cloud push in formatio n dati ng chat com muni cati on systems. An droid-based Baidu cloud push chat with frie nds APP tested running late, the results show that the system has completed the user registration, login, frie nds search,
11、 add, delete, recomme nd hav ing com mon in terests .参考资料. friends, chat with friends, group chat Features. At the same time, the in teractio n betwee n the user in formatio n, the com muni cati on system can run very smoothly. Key words: An droid; in sta nt messag ing; Baidu cloud; Smartph one 第一章绪
12、论 1.1研究背景 An droid的英文翻译是指“机器人”,而 An droid这个词语作为手机操作系 统的名称出现,An droid手机操作系统是谷歌在2007年发布的,自An droid作 为手机操作系统出现在人们的视野之后,An droid智能手机的市场得到迅速扩 大,与此同时,与An droid智能手机相关的技术和应用也迅速崛起,目前国外多 数智能手机都采用An droid操作系统,An droid操作系统的开源性和可开发性使 得An droid操作系统的应用软件越来越多,这些应用软件遍布于人们的生产、生 活、学习和工作、娱乐。An droid这种手机操作系统被越来越多的手机生产厂商
13、 和手机用户接受和使用。 基于An droid的即时通讯(Ista nt messag in g,IM )是随着互联网时代的兴 起而迅速崛起的新型通讯手段,并一度成为了21世纪以手机为终端聊天和交友 的主流。其发展很迅猛,发展空间宽阔、发展前景乐观。由此,本项目的开发基 于以下几点: 1) An droid系统手机现在已经遍布整个世界,很多人都在使用,与此同时, 人们需要更好、反应更为灵敏、更方便快捷的手机应用来满足自己的要求,所以 针对该系统手机进行应用开发已然成为IT行业发展和研究的热门方向。 2) 固定网络的即时通讯系统在In ternet中得到广泛的应用,即时通讯已经 成为现时代用户工
14、作、学习和生活中不可或缺的通讯工具。 3) 移动网络的无线终端设备在各个领域已经广泛的使用,几乎各个地方手 机的使用也得到了全面的普及,利用无线的终端设备访问网络已经成为人们的需 求。人们希望在手机、平板电脑等无线终端设备上就可以实现和别人进行信息交 互。 4) 中国作为世界第一的人口大国,人口众多必然会导致人与人之间信息的 交互量庞大、信息交互频率高,与此同时,手机的使用量必然也是相当的庞大, 所以用户也迫切的希望能有一些应用能够实现与别人的即时通讯。 本项目“基于An droid平台的百度云推送聊天交友 APP不仅支持用户通信聊天、 .参考资料. 还可以让用户找到有共同爱好兴趣的好友,彼此
15、沟通交流升华自己。 1.2国外应用现状 随着科技的发展,人们在生活、学习,工作、娱乐上不断的追求智能。现无 论在国还是国外,智能手机都是越来越普及。在手机用户中An droid智能手机的 使用所占的比重也只会越来越大,许多中国的消费者已经将手机视为最首选的移 动终端智能设备,这意味着智能手机将成为人们上网的主要工具。以后我们可能 原来越依赖于移动端。随着3G 4G等网络技术的应用、无线网络实现覆盖和 An droid智能手机的普及,让移动互联网与我们的生活、工作和学习紧密联系在 一起不可分离,同时也迫使无线移动手机终端成为人们必须的工具。现在主流的 智能机配置已经得到全面的提升,虽然说现在很多
16、人认为手机不是电脑, 手机比 不上电脑,但是现在高配置的智能手机能够实现的功能并不亚于电脑,而且能与 电脑相媲美。手机不再是单一的通讯工具,从很多成面上来评价,智能手机在很 多时候可以充当电脑,它的功能已经和人们日常的生活、娱乐、工作、通讯等多 个层面紧密相关,在功能应用和软件安装丝毫不比笔记本差,相比笔记本电脑, 手机携带方便、小巧时尚、待机时间长等优势无可代替。 现在很多国家的人们使用的都是 An droid系统的智能手机,而以IOS系统作 为运行平台的苹果手机虽然能够热销同时也很受年青一代人的喜爱,但是由于其 IOS系统平台的兼容性和手机价格昂贵等原因,IOS苹果智能手机并不是大多数 人
17、的选择。而作为国外智能手机用的最多的操作系统,许多厂商也看到了 An droid独特的优势,于是从国外到国,多数厂商开始采用an droid,生产手机 以及电脑,相应的基于An droid平台的各种手机APP层出不穷。但真正作即时通 讯功能的聊天交友 APP却很少,正是在这种形势下,我们设计了基于An droid 平台的百度云推送聊天交友APP 1.3研究的目的和主要容 本课题要求设计并实现一个基于An droid平台的百度云推送聊天交友APP 当前随着智能手机的普及推广,以及智能手机功能的越来越完善,人们的生活、 学习、工作和娱乐也越来越多的离不开智能手机,现在智能手机有两种类型,一 .参考
18、资料. 个是由苹果公司开发销售的IOS封闭式操作系统苹果手机,另一个是由谷歌开发 的An droid操作系统智能手机,其中An droid操作系统在智能手机中占有最大比 重,更为普遍。本课题主要做的是一个基于 An droid平台的聊天交友APP软件。 通过这个APP人们可以即时通讯,同时这个APP软件还可以帮助人们找到具有相 同兴趣爱好的朋友。 容及功能:这是一个可以聊天交友的 APP软件,在An droid手机操作系统开发 而来,主要应用于An droid智能手机上,通过百度云所推送的信息,结交同兴趣, 同职业,同地区的朋友,主要功能和腾讯的 QQ聊天软件有相似之处。 主要功能如下: 1)
19、 用户登录注册:用户只有注册登录后才能正常使用这个APP聊天工具 2)添加好友:用户注册登陆后,可以根据对方账号或者添加好友 3) 查找好友:用户可以在好友列表搜索好友删除好友:用户可以删除好友 4)修改好友备注信息:用户可以根据需要修改所添加好友的备注信息 5)好友聊天:同为注册用户且是好友关系的用户之间可以聊天,可以发送 文字,也可以发送图片,表情等信息。 6)群聊天:用户可以把所添加的好友拉进同一个群,多人对话,群聊天。 7)好友推荐:系统会自动给用户推荐具有相同兴趣爱好的好友。 1.4论文结构 本文档是对基于An droid平台的百度云推送聊天交友 APP的一个总体的把 握,以便在下一
20、步的开发设计中更顺利的完成开发和实现预期的项目标准,并且 设计对其他功能的添加有良好的接口。 设计系统的架构,以便使系统的开发能有 效进行。文中着重阐述了基于An droid平台的百度云推送聊天还有APP的整体开 发过程。介绍了系统的开发环境、开发工具以及运行环境,对于设计思想和设计 流程也做出了全面的叙述,在数据库创建思想以及各个数据表之间的具体关联等 方面也做出了详细说明,并且具体剖析了系统各个功能的实现过程以及详细设计 过程,对该系统主要功能进行截图分析, 并用代码来解释主要实现方法。 在绘制 简单系统功能模块图的同时,力求更加清晰地表明设计思想以及对整个程序设计 的规划及具体实现。 第
21、一章,绪论部分; 第二章,对软件开发环境和技术框架的简介; 第三章,系统可行性分析和需求分析; 第四章,系统的总体设计; 第五章,系统的功能实现; 第六章,系统的测试与维护; 第七章,总结与展望。 1.5小结 这一章的任务是为了引导读者对整篇论文有一个大体的认识,先叙述了本 App的开发背景和意义、国外研究现状及发展趋势,然后对论文的主要工作、组 织结构都作了讲述。 .参考资料. 第二章开发环境及技术简介 本系统采用C/S模式,开发环境选择当前流行的移动平台系统 An droid开发, 前台页面用Java实现,后台数据库关系型数据库 SQLite,下面对开发工具简要 介绍。 2.1数据库技术
22、SQLite已经被多种软件和产品使用,Mozilla firefox 就是使用SQLite来 存储配置数据的,An droid和iPho ne都是使用SQLite来存储数据的。 SQLite的体系结构如图2.1所示: 图2.1SQLite体系结构图 2.2 JAVA语言的简介 JAVA开发语言于1995年被SUN推出,它和和现在的很多语言相似,比如 C 语言、C+语言等,由于其简单的、跨平台、面向对象的、分布式的、解释的、 健壮性、安全性、结构中立、可移植性和性能优异的多线程等特点在IT界越来 .参考资料. 越受到开发者的关注和应用,至今成为了应用最为广泛的软件开发语言之一。 2.3 An d
23、roid 平台的简介 An droid (安卓),是一个以Linux为基础的开源移动设备操作系统,主 要用于智能手机和平板电脑,由 Google成立的Open Handset Allianee ( OHA 开放手持设备联盟)持续领导与开发中10。An droid的架构分为四层: 1)最底层是Lin ux Kernel,也就是说 An droid系统是基于Lin ux核的。 在这一层中,都是一些设备的驱动程序,这些驱动程序都是An droid最基本和最 核心的功能。 2)然后是Libraries 层。其中都是一些使用C和C+编写的程序包,我们 可以看到很熟悉的OpenGL WebKit SSL等
24、等。在Library旁边的是一个 An droid的运行是环境(Run time),在基于Java的Core Libraries 之上, Google提供了一个针对于手机平台优化过的的虚拟机。 3) 再往上一层是ApplieationFramework 。该层提供了手机开发的基本 API, 也就是说开发An droid程序都是基于ApplicationFramework。 4) 最高层是Applieations 。开发软件时就是在该层开发。在进行 An droid开发时,采用的是An droid Studio1.5 版本开发工具。An droid Studio 是由Google公司基于Inte
25、lliJIDEA(类似于Eclipse的ADT开发的,无论 它的界面还是功能都远超 Eclipse,目前很多项目都是在An droid Studio工具 上开发的,An droid开发工具的趋势必定是An droid Studio 11。 2.4百度云推送的简介 消息推送就是用户与用户之间的消息交互,目前很多消息推送的AndroidApp 都采用推送的方式来进行消息通知。 推送模式如图2.2所示: PollPush 图22消息推送模式图 百度云推送的实现技术简单来说就是利用 Socket维持Client和Server间 的一个TCP长连接,目前,百度云推送针对An droid端提供通知推送,文
26、本消息 推送以及富媒体推送。 An droid SDK的整体概览和部运行机制如图2.3所示: 用户应用 5 TUT Push SDK -MH Push HTTP/HTTPS API J L O P朋h服务器 图2.3 An droid SDK的整体概览和部运行机制图 主要功能如下: (1) Push服务初始化以及 Client注册绑定 (2) 创建或删除标签(Tag) 接收Push Server的通知信息并提供自定义展现消息方式 (4) 推送数据统计分析功能,包括通知信息的点击和删除统计以及应用使用情况统计 (5) 富媒体推送 2.5小结 这一章主要介绍了系统开发时用到的技术和开发工具。先简要
27、介绍了 An droid,然后对Java开发时所用到一些相关技术进行介绍,还介绍了系统开发 时引用到的第三方百度云平台,最后对系统的开发工具作了简单叙述。 参考资料. 第三章可行性分析和需求分析 此部分对系统进行可行性分析和需求分析,将用户的需求和实现相结合,分 析各个实体间的关系。 3.1编程与运行环境 3.1.1系统开发环境 软件类需求: 1)操作系统:windows 7及其以上操作系统。 2)数据库:sqlite 3)服务器:Tomcat 6.0.29 4)客户端开发平台:Eclipse 5)后台管理开发语言包:JDK1.7。 6)客户端开发语言包:An droid SDK + JDK1
28、.6。 硬件类需求: 1)电脑存:2G以上。 2)电脑CPU双核及其以上。 3.1.2系统运行环境 An droid智能手机、平板电脑等多种智能移动设备。 3.2可行性分析 可行性研究是以系统的、全面的研究方法,对影响项目的各种因素进行剖析, 其中以经济效益为核心,用大量的数据来论证影响软件开发项目的各种因素,进 而知道项目的开发是不是可行的。 本文通过技术可行性、经济可行性和操作可行 性三个方面对基于 An droid平台的百度云推送聊天交友 APP项目进行可行性研 究。 321技术可行性 技术可行性是指使用现有的技术能否实现系统的设计开发与最终完成。本系 统是基于An droid移动平台采
29、用Java和xml语言并结合Mysql数据库,对计算 机软、硬件的要求不高,当前的开发技术与数据库应用技术完全能够满足用户的 需要。该系统采用的技术不会造成过大的技术风险,本项目是本科毕业生的一个 毕业小设计,其中的所有东西都是个人来完成,不存在人员流动和人员之间编码 等水平的差距。因此,开发此系统在技术上是可行的。 3.2.2经济可行性 经济可行性是指在一个软件项目开发周期结束后,项目所花费的成本是否超 过预期的要求,具体的来说就是是否存在经济利益。本系统是一个小型的 Andriod终端运用软件,在技术上易于实现,从而在经济上也就不会产生较大的 开发成本。近几年来,移动端特别是基于Andri
30、od的移动端应用特别多,市场 也非常广阔,本系统是基于 An droid平台的百度云推送聊天交友 APP它的开发 成本很低,但是它一旦进入市场后一定能受到人们广泛青睐,因此,开发此系统 在经济上是可行的。 3.2.3操作可行性 计算机技术正是为了减少人工操作的劳动强度而产生的。基于An droid平台 的百度云推送聊天交友 APP界面简洁,框架清晰,美观大方,为充分展现APP 的交互性,能让增强用户体验。本系统加强了界面可操作性,数据输入量少,使 用者非常容易就能完全掌握系统的全部操作流程。 通过以上三个方面的研究,总体认为本系统的开发是可行的。 3.3需求分析 需求分析是一个软件项目开发周期
31、中最重要的一步, 需求分析工作的优劣完 全影响到中后期项目能否顺利完成和项目能否达到用户的预期要求。 需求分析的 基本任务是确定系统在实现后要实现哪些功能,是以后系统实现的基础和明确系 统开发结束后的一个标准 3.3.1功能需求 本设计是一个具有交友聊天的 An droid平台的应用软件,用户群体年龄不受 限。智能手机的普及,各种应用软件层出不穷,我们习惯了常用的QQ微信和 微博,现在我们所开发的基于An droid平台的百度云推送聊天交友APP同样可以 满足用户交友聊天的需求,同时它还可以推荐给用户具有相同兴趣爱好的朋友。 本系统共设计出六大功能模块,分别是用户注册模块、用户登录模块、用 户
32、信息管理模块、聊天管理模块、好友管理模块和好友推荐模块。系统的所有功 能模块的说明如表3.1所示。 表3.1功能模块表 功能模块 功能划分 简要描述 用户注册模块 用户注册 使用该聊天APP时需要分别输 入用户名、性别和登录密码来 注册一个用户 用户登录模块 用户登录 在用户已经注册或是退出系统 后需要登录的时候需要输入与 注册时设置密码相匹配才能登 陆成功 用户信息管理模块 头像管理 用户头像修改 昵称备注管理 用户备注和昵称修改 密码管理 用户密码修改 其他管理 用户个性签名、地址等管理 聊天管理模块 发送文字 在键盘上书写出需要发送的文 字信息点击发送 发送图片 选择数据库中或者是本地存
33、储 的图片点击发送 发送表情 选择已经收臧或者数据库中的 表情点击发送 好友推荐模块 推荐好友 推荐具有共同兴趣爱好的用户 好友管理模块 修改信息 修改好友显示得信息,昵称等 查询好友 通过好友昵称或者ID查询是 否存在这位好友 添加好友 通过查询好友点击添加好友按 钮添加好友 删除好友 选择系统上存在的好友点击删 除按钮执行删除 对应的系统总体功能如图3.1所示: 图3.1系统总体功能图 332用例分析 1、用户注册模块 此模块是根据系统具体的操作流程所设计,几乎所有的聊天系统都需要进行 这一环节,用户需要输入有效的用户名和密码, 点击注册按钮,系统才会自动的 将用户的个人信息纳入数据库然后
34、用户成功注册。其用例图如图 3.2所示。 .参考资料. 图3.2用户注册用例图 (1)昵称/ID用例 简要描述 设置昵称或者ID 事件流(详细描述) 1、用户输入个人喜欢的昵称或者ID 2、操作后数据库作相应的更新 (2)密码用例 简要描述 设置密码 事件流(详细描述) 1、用户输入个人喜欢的密码 2、操作后数据库作相应的更新 (3)选择性别用例 简要描述 选择性别 事件流(详细描述) 1、用户选择系统给出的性别选项,选择男性/女性 2、操作后数据库作相应的更新 2、用户登录模块 用户登录需要输入与注册时成功纳入数据库的昵称、ID或者和密码相匹配才 能登录到系统中。其用例图如图 3.3所示。
35、图3.3用户登录用例图 (1)昵称/ID用例 简要描述 输入昵称或者ID 事件流(详细描述) 1、用户通过昵称或者ID验证登陆系统 2、操作后调用数据库用户信息 (2)密码用例 简要描述 输入密码 事件流(详细描述) 1、用户通过密码验证登陆系统 2、操作后调用数据库用户信息 3、用户信息管理管理模块 用户登录到系统中后,就拥有以下权限,共包括4个部分,分别是头像管理、 昵称备注管理、密码管理和员其他管理。其用例图如图3.4所示。 图3.4用户信息管理用例图 (1)头像管理用例 简要描述 头像修改 事件流(详细描述) 1、用户修改头像 2、操作后数据库作相应的更新 (2)昵称备注管理用例 简要
36、描述 对昵称和备注进行修改 事件流(详细描述) 1、用户对自己的昵称和群自己的备注进行修改 2、操作后进行相应的数据库更新 (3)密码管理用例 简要描述 密码的找回和修改 事件流(详细描述) 1、用户对个人密码修改和忘记密码时找回 2、操作后进行相应的数据库更新 (4)其他管理用例 简要描述 对其他信息修改 事件流(详细描述) 1、用户对个人其他信息修改,包括地址和个性签名等 2、操作后进行相应的数据库更新 4、聊天管理模块 聊天管理主要是对发送聊天信息管理,用户可以自主选择需要发送的文字、 图片和表情发送给其他用户。其用例图如图 3.5所示。 图3.5聊天管理用例图 (1)文字用例 简要描述
37、 用户发送文字信息 事件流(详细描述) 1、用户输入文字发送给其他用户 2、发送后进行相应的数据库更新 (2)图片用例 简要描述 用户发送图片信息 事件流(详细描述) 1、用户选择数据库或者本地图片发送给其他用户 2、发送后进行相应的数据库更新 (3)表情用例 简要描述 用户发送表情信息 事件流(详细描述) 1、用户选择数据库或者已经收藏了的表情发送给其他用户 2、发送之后进行相应的数据库更新 5、好友推荐模块 好友推荐主要是针对于数据库中已经存在并且和该用户有某种相似(如:地 址相同、兴趣爱好相同等)之处的用户进行推荐。其图如图3.6所示。 图3.6好友推荐用例图 (1)推荐用户管理用例 简
38、要描述 推荐用户 事件流(详细描述) 1、系统对用户有选择性的推荐其他用户 2、操作后用户推荐列表里的好友更新 6好友管理模块 好友管理模块是指用户登录到系统中,对好友进行的查询、添加、删除和修 改信息的操作。其对应的用例图如图3.7所示。 图3.7好友管理用例图 (1)查询好友用例 简要描述 查找好友 事件流(详细描述) 1、用户通过输入用户昵称或者用户ID查找好友 2 、数据库调用用户信息 (2)添加好友用例 简要描述 添加好友 事件流(详细描述) 1、用户通过输入用户昵称或者用户ID查找好友点击添加按钮 2 、操作成功后用户好友列表更新 (3)删除好友用例 简要描述 删除好友 事件流(详
39、细描述) 1、用户选定好友列表中的好友,点击删除按钮 2 、操作成功后用户好友列表更新 (4)信息修改用例 简要描述 修改好友信息 事件流(详细描述) 1、用户选定好友列表中的好友,选择修改好友的备注等信息 2 、操作成功后用户好友列表更新 333性能需求与非功能需求 1)真实性 对于通过本应用软件注册的信息和个人情况,其真实的基本信息都按照用户 户输入的存档。 2)可靠性 对用户输入的数据要有严格的防错和校验措施,用户在输入或者是更改个人 数据时,数据库能及时响应并且更新,确保数据的一致性。 3)安全性 本系统的用户所注册的信息会永远保存在数据库中不会丢失,只有用户本人 登录应用后才能修改,
40、数据的安全性得到保证。 4)性 每个用户注册的基本信息纳入数据库后,数据库会让用户个人信息其他用户 不可见,只有用户本人才能执行与其相关的操作, 在登录时,需要输入的数据与 数据库中的数据相匹配才能成功登录。 3.3.4用户或人的因素 在用户输入的数据不符合系统规定或者是执行了错误的操作的时候,系统会 给出相应的提示,即使是对 An droid手机不太熟悉的用户使用也应该不存在问 3.4小结 这一章对本系统的需求分析进行了大致的概述,先概述了系统的主要目标和 系统的业务流程,使得本系统的总体一目了然,然后用一些用例图和用例描述来 详细描述系统中一些主要功能的运作方式。 .参考资料. 第四章系统
41、设计 4.1总体设计 4.1.1系统设计指导思想及原则 1)实用性 这是最主要的设计原则。以用户需求为基础,符合用户的实际需求,确保手 机应用在用户中能实现聊天等功能。 2)先进性 用于开发本系统的计算机配置要符合第三章所提出的系统开发环境的要求。 系统开发架构、利用的开发方法等要具有先进水平2。 3)可靠性 在执行输入数据与系统规定不相符、必填信息空白等不规操作时,要确保系 统还能正常运行并能给用户发出反馈。 4)安全性 根据An droid智能终端聊天应用的特点和要求,制定相应的安全策略和安全 机制,确保用户输入的数据不泄露。 5)友好性 确保系统应用能让用户简单快捷的掌握使用功能。 4.
42、1.2系统功能设计 根据软件需求分析,该应用软件的功能主要分为以下六个模块: 1)用户注册模块 该功能模块指使用该聊天 APP时需要分别输入用户名、性别和登录密码来注册一 个用户。 2)用户登录模块 该功能模块是指在用户已经注册或是退出系统后需要登录的时候需要输入与注 册时设置密码相匹配才能登陆成功。 .参考资料. 3)用户信息管理模块 该功能模块包括用户的头像管理,头像管理就是修改用户个人头像;昵称备注管 理,即用户对个人的昵称和在群聊天备注的修改;密码管理,即用户对个人登录 密码的修改;其他管理,即用户对个人地址、个性签名等信息的修改。进行这些 操作后,数据库进行相应的更新。 4)聊天管理
43、模块 该功能模块主要是为了用户与用户之间能实现信息交互,其中包括文字、图片、 表情等。 5)好友推荐模块 该功能模块指系统通过调用用户的普通信息将有共同兴趣爱好的用户相互推荐。 6)好友管理模块 该功能模块主要针对用户好友执行查、增、删、改操作。即用户可以通过输入其 他用户的昵称或者ID来找到该用户;用户查询到其他用户或者是系统推荐的用 户,就可以执行添加功能;用户选定好友列表中的好友执行删除; 用户选定好友 列表中的好友执行修改备注等操作。 系统功能如图4.1所示: 图4.1系统功能图 4.2详细设计 此部分对系统的业务处理流程和操作流程进行分析和设计,并细化各模块的 功能。 4.2.1系统
44、流程 系统流程就是用户使用该应用软件是需要按照系统的哪些功能步骤进行操 作。 .参考资料. 用户登录操作流程如图4.2所示: r 以用户名在telssfe 表中查找该用户 错误握示保存对应的密 保存UserID 图4.1用户登录操作流程图 注册用户操作流程如图4.2所示: *修改信息 图4.2用户注册操作流程图 422接口设计 系统分为服务器端模块与客户端模块,其其接口通过应用首页连接。如下表: 1 注册用户如表4.1所示: 用户接口 语法结构 软件回答信息 注册用户登录 输入用户名(UserNamg 输入密码(Pwd 进入用户操作页面 输入修改用户信息 点击确定 进入修改该注册用户 信息界面
45、 点击输入框搜索好友 进入显示好友列表界面 输入账号点击添加好友 按钮 将添加新的好友 点击删除好友按钮 删除好友 点击好友推荐按钮 进入推荐好友界面 点击发送信息按钮 发送聊天信息 表4.1注册用户表 4.3运行设计 4.3.1主要模块实现逻辑 1 用户注册模块如图4.3 所示: 图43用户注册模块 2.用户登录模块如图4.4所示: 图4.4户登录模块 3 搜索好友模块如图4.5所示: 图4.5搜索好友模块 4 添加好友模块如图4.6所示: 图4.6 添加好友模块 432出错处理设计 错误登录信息 系统提示错误登录信息 系统返回登录界面 非法进入管理员操作页面 系统提示非法进入信息 返回管理
46、员登录页面 非法进入用户页面 系统提示非法进入信息 返回首页 4.4数据库设计 数据库设计在一个系统开发周期中是相当的重要环节,数据库设计的好坏直 接影响到系统是否能顺畅运行,数据更新是否及时等。该环节为后面的具体实现 环节打下基础。本项目软件服务器端主要采用百度云服务器,数据库采用的是 sqlite,该阶段分为逻辑结构设计和物理结构设计两个方面。 4.4.1逻辑结构设计 本系统所有信息主要存储到以下这四表中,分别为: (1) 注册用户信息表:即用于记录app用户注册的相关信息; (2) 好友信息表:用于记录联系人的相关信息; (3) 通讯信息表:存储的是用户与联系人的信息; (4) 聊天会话
47、信息表:主要存储用户和好友的会话信息; 4.4.2 E-R 图 E-R图(实体一关系图)是最直观的一种表现方法,设计者可以通过它直接 反映出实体间的关系,它能将用户的数据要求明确地表达出来。 4.7实体关联图 1.用户属性如图4.8所示: 4.8用户属性图 2.好友属性如图4.9所示: 4.9好友属性图 3.聊天会话属性如图4.10所示: 4.10聊天会话属性图 4.通讯消息属性如图4.11所示: 发送状态 消息类型 消息时间 数据ID 联系人ID 消息ID 通讯消息 4.11通讯信息属性图 4.4.3数据库物理设计 为了将在系统在运行过程中产生的数据纳入后台,便于数据库数据更新,因 此,将E
48、-R图转换成关系模型,即在数据库中建立实体关系表。 1、用户信息表如表4-4-1所示: 功能:用户表用来保存所有用户的信息 列名 数据类型 说明 userid Int primary key auto_ in creme nt 用户ID user name varchar 用户昵称 pwd varchar 密码 phone varchar 用户手机 sex varchar 性别 address varchar 用户所在城市 表4-4-1用户信息表 3、好友信息表如表4-4-2所示: 功能:好友信息用来保存所有好友的信息 列名 数据类型 说明 id Int primary key auto_i
49、ncreme nt 用户ID Name varchar 名称 ni che ng varchar 昵称 nu mber Int picture varchar 头像 sex varchar 性别 表4-4-2好友信息表 4、聊天会话信息表如表4-4-3所示: 功能:聊天会话信息表用来保存所有聊天会话的信息 列名 数据类型 说明 ld_ow ner Int primary key auto_i ncreme nt 拥有者ID dataId int 数据ID userId int 好友ID content varchar 会话容 time data 会话时间 tyoe varchar 会话类型 c
50、ou nt int 会话数目 表4-4-3聊天会话信息表 4.5小结 这一章对本系统的后台系统设计做了详细的概述,包括系统总体设计、系统 详细设计和数据设计。在系统总体设计和详细设计中,用功能树来展示了本系统 的主要功能,在数据库设计中,画E-R图展现出概念模型之间的关系, 并画出每 一个数据表的数据容。 第五章系统的功能实现 此部分对系统实现的重要部分进行了阐述,同时附有部分重要代码以及解 释,是系统在开发过程中难点的说明。 5.1 APP首页模块的实现 系统欢迎界面如图5.1所示: 基于百度云聊天 颂叮貞以便说谨靑整EI甜曲 1 Cap/Jyf 1 心 50_ 6 + H II 遥H1.
51、图5.1 APP首页 5.2个人信息设置管理模块的的实现 个人信息设置管理模块的功能包括用户昵称修改,密码修改、心情修改,此 外还包括好友添加验证等功能。 个人信息设置管理模块的实现如图 5.2、5.3所示: 图5.2昵称修改页面 个人资料 way ID ; 123456789 个性驾容 希望是很好的早餐却很橹的晚竇 手机 138383S9O12 -并臥两上沖 使用百度账号登录 图5.3个人设置管理模块页面截图 主要代码: private Han dler mHa ndler = new Han dler() Override public void han dleMessage(Messag
52、e msg) super.ha ndleMessage(msg); switch (msg.what) case LOGIN_OUT_TIME: if (mLogi nO utTimeProcess != n ull if (mC onn ectServerDialog != n ull if (task != null) task.stop(); T.showShort(FirstSetActivity.this,登录超时,请重试); break; default: break; ; Override protected void on Create(B un dle saved In st
53、a nceState) / TODO Auto-ge nerated method stub super.o nCreate(savedl nsta nceState); setC onten tView(R .l ayout.first_set_layout); in itData(); in itView(); 5.3好友信息管理模块的的实现 好友信息管理模块的功能主要包括:好友的查找、添加、删除和信息修改等功 。 好友信息管理模块的实现如图5.4、5.5所示: 4:64 好友列表 A 图5.4好友管理页面 图5.5好友列表页面 关键代码: private Han dler han dle
54、r = new Han dler() public void han dleMessage(Message msg) switch (msg.what) case NEW_FRIEND: User u = (User) msg.obj; / mUserDB.addUser(u); if (mLeftFragme nt = n ull) mLeftFragme nt=(LeftFragme nt) getSupportFragme ntMa nager() .fin dFragme ntByld(R.id.maineft_fragme nt); mLeftFragme nt.updateAdap
55、ter(); 更新 T.showShort(mApplication,” 好友列表已更新!); break; case NEW_MESSAGE: / String message = (Stri ng) msg.obj; .way.bea n. Message msgItem = (.way.bea n. Message) msg.obj; Stri ng userid = msgltem.getUser_id(); Stri ng n ick = msgltem.getNick(); String content = msgltem.getMessage(); int headId = ms
56、gltem.getHead_id(); / try / headId = In teger / .parse In t(Js on Util.getFromUserHead(message); / catch (Exceptio n e) / L.e(head is not in teger + e); / 如果不存 User(userld, (LeftFragme nt) if (mUserDB.selectl nfo(userld) = n ull) / 在此好友,则添加到数据库 User user= new msgltem.getCha nn el_id(), ni ck, headId
57、, 0); mUserDB.addUser(user); mLeftFragme nt= getSupportFragme ntMa nager() .fin dFragme ntByld(R.id.maineft_fragme nt); mLeftFragme nt.updateAdapter();更新一下好友歹U 表 / TODO Auto-ge nerated method stub Messageltem item = new Messageltem( Messageltem.MESSAGE_TYPE_TEXT, n ick, System.curre ntTimeMillis(),c
58、ontent, headId, true, 1); mMsgDB.saveMsg(userId, item); /保存到最近会话列表 Recentltem recentltem = newRecentltem(userld,headId, n ick, content, 0, System.curre ntTimeMillis(); mRece ntDB.saveRece nt(rece ntltem); mAdapter.addFirst(rece ntltem); T.showShort(mApplicatio n, n ick + : + conten t); break; defaul
59、t: break; 5.4通信聊天模块的的实现 好友之间可以发送即时通讯信息,聊天容可以是文字、也可以是图片或者表情。 通信聊天模块的实现如图5.6所示: 图5.6订通信聊天页面截图 关键代码: private void parseMessage(Message msg) Gson gson = PushApplicati on. get In sta nce().getGs on(); / Message msg = gson .fromJs on( message, Message.class); L.i(gs on = + msg.toStri ng(); Stri ng tag = m
60、sg.getTag(); Stri ng userid = msg.getUser_id(); int headid = msg.getHead_id(); / try /headid in teger.parsei nt(Js on Util.getFromUserHead(message); / catch (Excepti on e) / L.e(head is not a In teger.); / if (!TextUtils.isEmpty(tag) /如果是带有 tag 的消息 if (userld.equals(PushApplicati on .getI nsta nce()
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度工程安装居间合同2篇
- 项目经理合作协议书 2篇
- 售房补充协议 3篇
- 化妆品销售合同简单范本
- 高二期中家长会课件
- 饮品购销合同书范本
- 2024年度高速公路沥青混凝土搅拌站租赁合同2篇
- 基于AR技术的虚拟展览服务合同(2024版)
- 股权转让协议书范本合同范本标准版
- 《技术员岗位职责》课件
- 学校结核病防治知识培训课件
- 物业维修协议
- 工业漆水性丙烯酸防护msds
- 小学数学人教版五年级下册《3.1.1 长方体和正方体的认识》课件
- 关于变更的评估报告
- 培养箱产品3q验证方案模板
- 初三数学试卷讲评课教学设计
- 急诊科临床诊疗指南-技术操作规范
- GB 21148-2020 足部防护 安全鞋
- 滦平地区野外地质实习报告
- 2022年《ps通道抠图》教案
评论
0/150
提交评论