您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 基于Android的移动端企业内部社交软件的设计与实现-毕业答辩
基于Android的移动端企业社交软件的设计与实现xxxx班安徽财经大学目录软件需求分析1软件设计2软件使用说明3结论4CONTENTS安徽财经大学软件需求分析随着移动互联网的发展和手机用户的持续增涨,人们之间的交流也越来越依赖移动社交软件,如Facebook、Twitter、微信等已经已成为主流的移动社交软件。使用者可以通过好友与群的模块,直接或间接的关系与其他用户建立关系,并能够很快建立用户自己的社交网络。所以为了满足日益增长的移动社交通讯的需求,提高移动社交的服务品质,就有必要设计开发一套移动社交软件了。在这样的情况下,本文提出了基于Android系统移动社交软件的开发。Andriod以其开放性、快捷性和低成本的服务获得了更多厂商的青睐,已成为移动互联网的发展最为活跃的站台,对全球硬件厂商、运营商和消费者具有非比寻常的吸引力。国内统计平台友盟最新报告称,2016年第三季度,国内活跃的移动设备总量达14.5亿,移动活跃设备总规模进一步扩大,而其中搭配Android系统的移动设备占了85.3%。安徽财经大学软件的功能•论文提出的软件是一个满足移动互联网需求的社交类应用,主要用户是安卓移动互联网用户。软件的业务功能既包含了社交应用的通用功能,也实现了符合互联网应用特点的专属功能。通用功能包括注册登录模块、联系人模块、会话模块、群模块、设置模块。安徽财经大学功能模块图移动社交注册登录模块会话模块其他模块欢迎页面注册模块登录页面联系人列表模块添加好友模块邀请信息列表模块会话列表模块会话详情模块群列表模块新建群模块群联系人选择模块群详情模块全局线程池模块全局监听模块数据库模块主框架模块联系人模块群模块设置模块安徽财经大学软件设计是否登录过?主页面注册登录页面否结束应用开始联系人页面会话列表页面设置页面退出登录欢迎页面页面之间相互转换是软件流程图安徽财经大学注册登录模块欢迎页面•欢迎页面程序的第一个页面,延时3s后根据是否登录过的状态,来执行跳转功能。如果没有登录过,直接跳转到登录页面;如果登录过,获取当前用户信息,并调用登录成功后的方法,最后跳转到主页面。安徽财经大学注册登录模块注册页面•注册功能,首先要获取输入的用户名称和密码,并校验输入的用户名称和密码,然后去环信服务器创建用户账号,最后,提示注册成功还是失败。安徽财经大学注册登录模块登录页面•登录功能,首先要获取输入的用户名称和密码,并校验输入的用户名称和密码,然后去环信服务器登录用户账号。如果登录成功,调用登录成功后方法,保存数据到本地数据库,并跳转到主页面,最后结束当前页面;如果登录失败,提示登录失败。安徽财经大学联系人模块联系人页面•联系人列表页面包含的功能主要有:添加好友、好友邀请、群组、和联系人展示。•点击顶部的“+”号按钮可以实现跳转到添加好友页面。在代码中需要监听该“+”号的点击事件•点击好友邀请条目可以实现跳转到好友邀请信息列表页面,在代码中需要注册监听该好友邀请条目的点击事件。•点击群组条目可以实现跳转到创建群页面,在代码中同样需要注册监听该群组条目的点击事件。安徽财经大学联系人模块添加好友页面•添加好友页面功能主要围绕查询联系人按钮和添加联系人按钮展开的。•查询按钮:首先注册查询按钮的点击监听,当用户点击查询按钮后,获取输入的名称,并校验输入的名称不能为空,去服务器获取要查询的人,最后显示要添加的联系人。•添加按钮:首先注册添加按钮的点击监听,然后联网调用EMClient.getInstance().contactManager().addContact()去环信服务器添加好友邀请。如果发送好友邀请成功,提示发送成功;如果发送好友邀请失败,提示发送失败。安徽财经大学联系人模块邀请信息页面•邀请信息列表主要是展示好友的邀请信息和群相关的邀请信息。技术上主要采用listview进行实现,显示的数据来源于本地数据库中的所有邀请信息,并将获取的邀请信息传递给适配器进行显示。•在该页面还要注册联系人邀请信息变化的广播和群邀请信息变化的广播,随时监听邀请信息的变化。如果邀请信息变化,立刻执行刷新该页面。安徽财经大学会话模块会话页面•会话页面需要继承环信EaseUI提供的EaseConversationListFragment,就可以显示当前会话列表页面中的头部和搜索框。•调用EMClient.getInstance().chatManager().addMessageListener,并在onMessageReceived()方法中调用EaseUI.getInstance().getNotifier().onNewMesg(list);获取会话信息并刷新页面。•点击每个会话条目都可以跳转到相应的会话详情页面,进行详细的聊天。安徽财经大学会话模块会话详情页面•先要创建一个环信提供的EaseChatFragment(),然后获取传递的环信id和会话类型(包括单聊和群聊)然后将该Fragment替换到当前要显示的页面布局上。•如果当前页面是群聊,点击页面右上角的群聊图标可以跳转到群详情页面。如果是单聊,右上角会显示垃圾箱图标,点击后,可以删除会话的所有聊天记录。•注册退群广播,如果接收到的退群广播信息与当前用户的id一致,就结束当前页面。安徽财经大学群模块群列表页面•群列表主要采用listview和listview添加头布局技术实现。所有群信息展示采用listview,创建群组条目采用listview添加头布局的方法添加到listview中。•Listview初始化时要将数据展示的适配器添加到listview中,同时连接网络去环信服务器获取所有群信息。如果获取成功,刷新显示。如果失败,提示获取失败。通过适配器将获取的所有群信息进行展示。•点击新建群条目,跳转到新建群页面。•点击群列表中的item,首先要获取当前群id和当前会话类型,并将该数据传递到会话详情页面。安徽财经大学群模块新建群页面•新建群组功能主要是围绕创建按钮展开的。•点击创建按钮,首先要获取群名称、群描述信息、群成员和创建群的参数等信息;然后连接网络去环信服务器创建群。如果创建群成功,提示结束当前页面。如果创建群失败,提示失败。安徽财经大学群模块群联系人选择页面•如果是该群中已经存在的联系人默认是已选择状态,不允许不选择,其他非联系人可以进行选择。•先从本地数据库中获取所有的联系人信息,并将该联系人信息通过BaseAdapter适配器进行展示。•是否选择联系人是通过,注册Listview条目的点击事件实现的。当点击了listview的item后,需要获取当前item的checkbox对象,然后对checkbox状态进行取反。同时要获取当前item的数据并将数据一并跟新。最后刷新数据。•点击保存按钮后,要从适配器中获取所有被选择的联系人,并将所有选中的联系人通过intent返回到上一个页面。安徽财经大学群模块群详情页面•如果当前用户为群成员,则只会显示退群按钮和该群中的所有成员信息。•如果当前用户为群主,则会显示解散群按钮、所有群成员信息、添加群成员按钮和减少群成员按钮。•获取所有传递过来的群成员信息。安徽财经大学设置模块设置页面•设置模块,目前只设计了一个退出登录的按钮。在退出按钮上会显示当前用户的名称。当点击该按钮时,会调用环信提供的EMClient.getInstance().logout()方法。如果退出成功,则关闭数据库资源,跳转到登录页面,然后结束当前页面。如果退出失败,提示失败信息。安徽财经大学结论总结•本文基于当前流行的操作系统平台,结合移动对于通讯社交的需求,设计和实现了基于安卓平台仿照微信聊天的移动社交应用。在项目的设计与实现过程中,本文完成了以下内容:•分析移动智能终端以及手机社交应用的发展现状,提出移动互联网用户的社交需求,阐述了社交应用软件的应用价值与意义。调研本项目中涉及和使用的平台相关组件、MVC架构和环信SDK。•总结安卓用户社交需求,定义本应用的功能性与非功能性需求,依据项目特点,选用MVC架构模式搭建客户端架构,确定了客户端的存储与传输方案。依据模块划分与本人工作,对注册登录模块、联系人模块、会话模块、群模块、设置模块和其他模块进行设计说明与流程分析。•针对实现过程中的jar包冲突问题阐述了客户端的解决方案。对应用的测试情况进行说明,经测试后表明,软件满足现有的功能性需求并具有良好的兼容性与稳定性。安徽财经大学结论展望•(1)完善现有的部分功能。现有的部分功能还不够完善:如设置页面仅有退出登录按钮,还没有设置信息。下一版本可以完善这些功能,以提高用户体验。•(2)增加视频聊天功能,实现用户与用户之间面对面视频聊天。•(3)扩展圈子社交与联系人社交,进一步增强软件社交性。例如添加圈子分享平台,促进圈子文件、资源分享;为用户添加标签,通过标签查找相同兴趣的用户等。安徽财经大学感谢•随着论文工作接近尾声,我的本科学习也将告一段落,本篇论文的编写是对自己大学学习的一个总结,也是为了以后的工作打好坚实的基础。•在论文即将完成的时候,我想感谢我的毕设指导老师张林,感谢他在我毕设写作期间的辛勤指导。感谢他对我论文的建议和评审。感谢他不辞辛苦和不厌其烦的给我的论文撰写提出建议。感谢他为我指明了论文撰写的方向。•还有尚硅谷的老师,在论文撰写的过程中,虽然老师的工作很繁忙,但依然抽出宝贵的时间帮我指导,对我的论文的主体结构、研究方法等诸多问题给出的修改意见。•感谢本科四年来给我上过课的各位老师,正是你们敦敦教诲,才让我能够求知而来,载知而归。
本文标题:基于Android的移动端企业内部社交软件的设计与实现-毕业答辩
链接地址:https://www.777doc.com/doc-6006609 .html