收藏 分销(赏)

基于ios的新浪微博iphone客户端的设计与实现大学本科毕业论文.doc

上传人:胜**** 文档编号:2080285 上传时间:2024-05-15 格式:DOC 页数:69 大小:1.59MB
下载 相关 举报
基于ios的新浪微博iphone客户端的设计与实现大学本科毕业论文.doc_第1页
第1页 / 共69页
基于ios的新浪微博iphone客户端的设计与实现大学本科毕业论文.doc_第2页
第2页 / 共69页
基于ios的新浪微博iphone客户端的设计与实现大学本科毕业论文.doc_第3页
第3页 / 共69页
基于ios的新浪微博iphone客户端的设计与实现大学本科毕业论文.doc_第4页
第4页 / 共69页
基于ios的新浪微博iphone客户端的设计与实现大学本科毕业论文.doc_第5页
第5页 / 共69页
点击查看更多>>
资源描述

1、基于iOS的新浪微博iPhone客户端的设计与实现Design and implementation of Sina microblogging iPhone iOS-based clientCandidate Name: Mu Zelin School or Department: Software School Faculty Mentor: Xue Jingfeng Chair, Thesis Committee:Prof. XXX Degree Applied: Master of Engineering Major: Software Engineering Degree by: B

2、eijing Institute of TechnologyThe Date of Defence: June,2014 研究成果声明本人郑重声明:所提交的学位论文是我本人在指导教师的指导下进行的研究工作获得的研究成果。尽我所知,文中除特别标注和致谢的地方外,学位论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京理工大学或其它教育机构的学位或证书所使用过的材料。与我一同工作的合作者对此研究工作所做的任何贡献均已在学位论文中作了明确的说明并表示了谢意。特此申明。 签 名: 日期:关于学位论文使用权的说明本人完全了解北京理工大学有关保管、使用学位论文的规定,其中包括:学校有权保管、并

3、向有关部门送交学位论文的原件与复印件;学校可以采用影印、缩印或其它复制手段复制并保存学位论文;学校可允许学位论文被查阅或借阅;学校可以学术交流为目的,复制赠送和交换学位论文;学校可以公布学位论文的全部或部分内容(保密学位论文在解密后遵守此规定)。 签 名: 日期: 导师签名: 日期:北京理工大学硕士学位论文摘要本课题的目的是开发一个基于iOS操作系统的新浪微博iOS客户端客户端软件。以新浪微博iOS客户端开放平台作为服务与数据获取来源,以iOS作为系统开发和运行环境,完成系统的设计、开发和测试工作。SNS(Social Networking Services)是近年互联网新媒体中一类重要的应用

4、服务。SNS即社会性网络服务,旨在帮助人们建立社会性网络的互联网应用服务。所谓开放平台,就是首先提供一个基本服务,然后通过开放自身的接口,使得第三方开发者得以将自己的应用统一运行在这一平台之上,我们把这样的一种网络服务模式叫做开放平台。系统开发过程中第一步先分析了新浪微博iOS客户端客户端应该具备的各项功能,并对各个功能做了非常细腻的的需求分析与定义。第二步去确定系统的整体结构,然后进行了有效的模块划分,确定了新浪微博iOS客户端客户端的设计方案。最后一步是在iOS这款移动操作系统上进行编码实现。并对客户端进行了功能和性能测试,并对整个工作做了总结。该系统的实现和使用,为微博用户提供了基于移动

5、终端访问新浪微博iOS客户端数据和服务的客户端软件,适应智能移动终端设备发展的潮流需要,满足人们随时随地访问新浪微博iOS客户端数据和服务的需求。 关键词:开放平台,微博,iOS, iPhone, SQLiteAbstract The purpose of this project is to develop an operating system based on iOS client Sina microblogging client software. Sina Weibo iOS client open platform as a service and data acquisitio

6、n sources to iOS as a system development and runtime environment, complete the system design, development and testing. SNS (Social Networking Services) is a new media in recent years, the Internet an important class of applications. SNS social networking service that is designed to help people build

7、 social networks of Internet application services.The so-called open platform, is the first to provide a basic service, and then through open their interfaces to third-party developers to make their applications run on this unified platform, we put such a network service model is called an open plat

8、form.The first step in the process of developing the system first analyzes the Sina microblogging client iOS client should have various functions, and each function to do a very delicate needs analysis and definition. The second step to determine the overall structure of the system, and then make a

9、valid module division to determine the Sina microblogging client iOS client design. The final step is to encode this implemented on iOS mobile operating system. And client functionality and performance testing, and the entire work summarized.Implementation and use of the system, as microblogging cli

10、ent software offers users access to mobile terminals based on Weibo iOS client data and services need to adapt to the trend of the development of smart mobile devices, meet people anywhere, anytime access to Sina Weibo iOS demand client data and services.Key Words: open platform, weibo, iOS, iPhone,

11、 SQLite目录第1章 绪论11.1 选题背景11.2 开放平台国内外研究现状21.2.1 开放平台的优势31.2.2 开放平台的分类31.2.3 开放API与下一代网络31.3 论文的主要工作41.4 论文的组织结构4第2章 系统需求分析42.1 客户端的需求分析42.1.1 客户端应满足的条件52.1.2 客户端的主要功能52.1.3 客户端的主要任务62.1.4 系统功能模块划分62.2 开发者工具72.3 本章小结11第3章 系统的设计123.1 系统总体设计概述123.2 系统模块设计143.2.1 用户注册模块143.2.2用户登陆和授权模块143.2.3系统第一界面展示模块16

12、3.2.4发表微博模块173.2.5搜索相关用户模块183.2.6查看微博内容模块203.2.7查看用户信息模块223.2 系统后端访问层设计243.2.1 三种网络状态243.2.2 网络状态检测253.2.3 网络状态变化253.2.4 网络请求263.2.5 oAuth 授权模块283.2.6 用户认证303.2.7 xAuth313.3 数据库的设计343.3.1 数据库的访问343.3.2 数据库概念设计353.3.3 数据库逻辑设计373.3.4 数据库表的创建393.3.5 JSON数据解析模块423.4本章小结43第4章 客户端功能的实现434.1 客户端总体功能实现概述434

13、.2 登陆验证的实现444.2 主界面显示模块实现454.3 搜索相关用户功能的实现474.4 发表微博功能的实现484.5 微博信息浏览模块的实现484.6 获取用户信息模块的实现504.7 查看关注功能的实现514.8 查看用户所有信息功能的实现514.9 本章小结52第5章 系统的测试535.1 单元测试535.2 本章小结54结 论55参考文献57致谢5857第1章 绪论1.1 选题背景SNS(Social Networking Services)是近年互联网新媒体中一类重要的应用服务。SNS即社会性网络服务,旨在帮助人们建立社会性网络的互联网应用服务。建立在真实社会的人际关系基础上的

14、网络用户关系构架。通俗的说,它是指可供用户以真实姓名登录,并在登录平台上以真实身份进行交流的站点,人们可以上传音乐和照片、撰写blog、小组讨论、交友等等。美国人基于哈佛大学心理学教授Stanley Milgram创立的六度分割理论,最早构思出SNS概念。根据六度分割理论,每个个体和任何一个陌生人之间所间隔的人不会超过六个,即最多通过六个人你就能够认识任何一个陌生人。按照该理论,每个个体的社交圈可以不断放大并相互交叉,最终形成一个大型网络一一即社会性网络(SocialNetworking) 。随着计算机网络技术的发展,在结合六度空间理论和WEB2.0技术的基础上,一些著名的SNS网站Faceb

15、ook, MySpace等在2003年前后相继出现。随后几年,此类通过“熟人的熟人”来进行网络社交拓展的SNS网站在全球网络用户中风靡,例如我们所熟知的:Orkut, StudiVZ, Skyrock, LinkedIn, Friendster等等。据相关数据显示,目前中国4.2亿的互联网用户中,超过50%的用户都使用SNS网站,并且SNS网站能做到每人每天至少登录一至两次。易观国际预计2011年SNS注册用户数规模将达到5.1亿。业内人士指出,今年SNS社交网站的市场规模将超过10亿元,增速超过200%,明年市场规模有望翻倍,超过20亿元。SNS社交网站近两年发展得如火如茶,伴随着网上农场等

16、游戏的普及,越来越多的人在不知不觉中熟悉了SNS社交网站。微博,即微博客(MicroBlog)的简称,是一个基于用户关系的信息分享、传播以及获取平台,用户可以通过WEB , WAP以及各种客户端组件个人社区,以140字左右的文字更新信息,并实现即时分享。最早也是最著名的微博是美国的Twitter 。SNS网站面临着发展势头正猛的微博客的威胁。Facebook的用户都是以现实生活中结识的朋友组成圈子相互交流,Twitter则降低了门槛,用户之间即使并不认识,但任何人的每一条信息都能以广播的形式通知其跟随者和其他所有的用户知道。“在微博客上,140字的限制将平民和莎士比亚拉到了同一水平线上”,微博

17、被称为140字符的革命。微博客上,每个人都形成了一个“自媒体”,每个人都是信息的生产者和消费者。一些大的突发事件或引起全球关注的大事,如果有微博客在场,利用各种手段在微博客上发表出来,其实时性、现场感以及快捷性,甚至超过所有媒体。社交网络不仅与我们的口常生活深深的结合在了一起,它还走进了政治领域,形成了“微博外交”。社交媒体缔造者马蒂亚斯鲁夫金斯在世界经济论坛上发言称,目前Twitter上有62位首脑活跃其中。国内微博企业无一例外地把学习的榜样都锁定在了Twitter身上,由于是本土中文服务,与其他网站互通性更强,自然比Twitter更能吸引国内用户。互联网化和泛媒体化的趋势开启了第一代博客的

18、应用,而互联网持续的高渗透率以及当下媒体消费者也是媒体生产者的理念,催生了类似微博这种新生平台。2009年8月份中国最大的门户网站新浪网推出“新浪微博”内测版,成为门户网站中第一家提供微博服务的网站,微博正式进入中文上网主流人群视野。2010年被称为中国“微博元年”。微博己逐渐发展成介入公共事务的新媒体,成为网络舆论中最具影响力的一种。移动互联网,就是将移动通信和互联网二者结合起来,成为一体。移动终端提供的便利性和多媒体化,使得微型博客用户体验的粘性越来越强。随着3G应用的发展,移动互联网也将为社交网络和微博带来革命性的变化,互联网正变得“社交化”。现在每天都有超过2500万条的新浪微博内容,

19、其中有38%都是来自于移动终端。易观国际预计,2011年开始,随着移动互联网业务的持续发展,移动SNS活跃账户规模又将进入年增长52%-65%的高速增长期,到2013年移动SNS活跃账户规模已达到4.19亿元。1.2 开放平台国内外研究现状开放平台(Open Platform)在软件业和网络中,开放平台是指软件系统通过公开其应用程序编程接口(API)或函数(function)来使外部的程序可以增加该软件系统的功能或使用该软件系统的资源,而不需要更改该软件系统的源代码。在互联网时代,把网站的服务封装成一系列计算机易识别的数据接口开放出去,供第三方开发者使用,这种行为就叫做Open API,提供开

20、放API的平台本身就被称为开放平台。通过开放平台,网站不仅能提供对Web网页的简单访问,还可以进行复杂的数据交互,将它们的Web网站转换为与操作系统等价的开发平台。第三方开发者可以基于这些己经存在的、公开的Web网站而开发丰富多彩的应用。新浪微博开放平台是一个基于新浪微博客系统的开放的信息订阅、分享与交流平台。您可以登录平台并创建应用,使用微博平台提供的接口,创建有趣的应用或者让您的网站具有更强的社交特性。新浪微博Web Service API是REST风格的。1.2.1 开放平台的优势通过开放API的方式,我们可以对众多的信息和应用进行再加工,使得之间的关联得以显现。在开放API的环境下,我

21、们就可以对原有的一些碎片化的数据进行重组,使其变得更有关联。这时候出现了叫做mashup的东西。mashup又叫做Web应用混搭技术,指的是利用其他网站的OpenAPl提供的内容进行重新搭配,从而制作出独特的、具有新价值的Web应用的一种技术。其中最具代表性的当属运用Google Maps提供的开放地理信息而创作出的令人眼花缭乱、极具创意的mashup应用。1.2.2 开放平台的分类开放平台按照是否提供有显著应用模式的服务可以划分为两类:1、应用型开放平台应用型开放平台的特点是自身依赖一个基础的应用模式(例如用户关系、博客等),然后开放平台供第三方开发者扩展,这一类的开放平台大致有以下几类:基

22、于用户关系的,例如Facebook;基于个人门户的,如myyahoo, igoogle;基于博客的,例如sohu blog。2、服务型开放平台服务型开放平台常常不会太引人注意,因为它们往往是躲在幕后的角色。这类平台本身并没有一个基础的应用模式,而是把计算资源作为一种服务,通过开放API提供给开发者,让开发者能够以极为低廉的服务费拥有大量、稳定的计算或存储资源。这类开放平台有一个热门的昵称,“云计算”。这方面的代表有amazon S3,Google Appengine。1.2.3 开放API与下一代网络下一代网络(Next Generation Network, NGN,又称为次世代网络。主要思

23、想是在一个统一的网络平台上以统一管理的方式提供多媒体业务,整合现有的市内固定电话、移动电话的基础上(统称FMC,增加多媒体数据服务及其他增值型服务。其中话音的交换将采用软交换技术,而平台的主要实现方式为IP技术,逐步实现统一通信其中voip将是下一代网络中的一个重点。使用API构建业务是实现开放式业务结构的关键技术,也是下一代网络区别于传统电信网的主要特点之一。目前,关于下一代网络的开放式业务API标准主要包括:由Parlay组织、3 GPP和ETSI SPAN共同制定的Parlay/OSA API以及由SUN公司在Java平台上推出的JAIN API。1.3 论文的主要工作本文的主要工作为设

24、计实现符合新浪微博开放平台应用规范的基于iOS的iPhone手机客户端,通过调用开放平台api与服务器通信,实现移动终浏览和发布微博等功能,主要有以下工作:1)研究新浪微博开放平台,API文档和授权机制等相关规范说明;2)研究iOS平台软件开发相关技术;3)在以上工作的基础了,按照微博开放平台api调用规范,制定基于iOS的客户端的设计方案,并进行实现。1.4 论文的组织结构本文共分5章,第1章绪论,说明了课题背景,开放平台研究,本文的主要工作和论文的组织结构。第2章详细讨论客户端的功能需求分析及开发工具。第3章详细讨论了客户端软件和数据库的设计。第4章详细讨论了客户端软件功能的实现。第5章对

25、软件进行了单元测试。第2章 系统需求分析2.1 客户端的需求分析2.1.1 客户端应满足的条件作为一个微博客户端,需要满足的基本特点,如:把用户请求转化成服务器能够理解和处理的格式;向服务器传送用户请求,同时接收服务器响应;解析来自服务器的响应,并将其展示给用户等等。在深入分析新浪微博开放平台API的基础上,本文所设计的基于iOS操作系统的微博iPhone客户端应该满足如下几个要求:访问微博REST API身份认证方式采用oAuth方式;限制单位时间内用户访问微博接口的次数;能够网络返回解析JSON数据;保存最近从网络获取的数据到本地数据库。2.1.2 客户端的主要功能本应用程序启动后,可以通

26、过使用新浪的微博开放平台,利用接口调用返回的数据,进行用户注册,用户信息配置,授权认证,用户登录。登录成功之后进入程序首页,可以显示微博好友发布的最新微博信息,以及相关图片的浏览。可以查看好友的个人信息、粉丝数量、发表的话题、所有发表过的微博以及其关注的好友情况。客户端软件主要是能够为用户提供实时信息交换,其主要功能模块包括:用户登录验证,获取follower微博列表,获取回复微博列表,获取私信列表,获取收藏列表,发送微博,发送回复微博,发送私信等。客户端的主要功能,如图2.1所示:(1)用户验证登录:用户登录服务器并进行身份验证;(2)获取关注微博列表:获取用户follow的关注对象的微博;

27、(3)获取回复微博列表:获取其他用户回复给用户的微博,回复微博所有人都可以看见;(4)获取私信列表:获取其他用户发给该用户的私信,私信只在对话用户之间可见;(5)获取收藏列表:获取用户收藏的微博;(6)发送微博:用户撰写并发送一条新的微博;(7)回复微博:用户以回复某用户的方式发送一条微博;(8)发送私信:用户向其他用户发送一条私信;(9)收藏微博:收藏一条微博消息。图2.1 微博客户端主要功能2.1.3 客户端的主要任务按照本文所设计的客户端的需求分析,它完全基于新浪微博开放平台的REST API。因此,它的主要任务是能够解析REST API返回的数据,以及按照REST API请求格式封装请

28、求。在客户端进行获取数据的过程中,解析接收到的数据是非常重要的上作。如果解析失败,就不能看到正确的信息。当请求返回到达客户端后,必须先调用相应的程序来进行解析,即首先根据请求的类型调用相应的处理函数来处理,并将结果用于更新用户界面。2.1.4 系统功能模块划分功能模块划分是描述系统的一个过程,需要将需求分析中的感性描述进行抽象化,提取出要实现的功能,这是整个系统开发的一个关键过程。在系统分析的基础上,确定系统的功能模块。系统的功能模块图如下图2.2所示:微博客户端用户最新微博列表发表新微博评论微博转发微博搜索用户添加关注和取消关注登录或授权认证图2.2 系统功能模块图2.2 开发者工具XCod

29、e是苹果公司的开发工具套件,它可用于管理工程,编辑代码,构建可执行文件,进行源码级调试,进行源代码仓库管理,进行性能调节等。套件的核心是Xcode应用程序本身,它用于提供基本的源代码开发环境。下面的章节将向您介绍开发iOS软件将会用到的关键应用程序:(1)XcodeXcode是一个集成开发环境(IDE),从创建及管理iOS上程和源文件到将源代码链编程可执行文件,并在设备运行代码或者在iPhone模拟器上调试代码所需的各种工具:用于对软件产品进行定义的工程管理系统。代码编辑环境,包括为文法显示不同颜色、代码补全以及符号指示等多种功能。高级文档阅读工具,可用于阅读搜索苹果文档。对上下文敏感的检查工

30、具,可用于查看选定代码符号的信息。高级链编系统,具有依赖检查及链编规则计算功能。GCC编译器,此编译器支持对C, C+, Objective-C, Objective-C+以及Objective-C 2.0和其他语言进行编译。集成源码级的调试功能,此功能使用GDB来实现。分布式计算,此功能可以让您将巨大的上程分布到数台联网的机器上运行。预测编译,此功能可以加速单个文件的编译周转时间。高级调试功能,例如停顿和继续运行,而且可以定制数据格式化方式。高级重构工具,这些上具可以让您在不改变整体行为的前提下对代码进行全局性的修改。工程快照的支持。工程快照是一种轻量级的本地源代码管理形式。支持启动性能上具

31、对软件进行分析。支持源代码管理集成。支持使用AppleScript实现链编过程自动化。可以生成DWARF和Stabs调试信息(所有的新上程都会默认生成DWARF调试信息)。Xcode工程的中心部分是一个工程窗口,如图2.3所示。此窗口为应用程序的关键元素提供快速访问。Groups &Files列表,可以对工程文件(包括源文件以及由源文件生成的链编口标)进行管理。工具栏可以访问常用的上具和命令。详情面板可以配置出一块区域用于对文件进行各种操作。工程窗口的其他部分提供一些工程上下文信息。图2.3 Xcode工程窗口通过Xcode链编应用程序的时候,可将其链编至iPhone模拟器或设备。模拟器为应用

32、程序测试提供本地环境,可以通过它测试应用程序是否具有正确行为。当应用程序的基本行为符合预期后,再通过Xcode将其链编到设备上,然后在己连接至计算机的iOS设备上运行程序。在设备运行应用程序是最终测试环境。在这一测试过程中,Xcode允许您将内建调试器绑定至设备上运行的代码,直接在设备上进行调试。如图2.4所示。图2.4 Xcode中运行项目(2)Interface BuilderInterface Builder以所见即所得方式组装用户界面。通过Interface Builder,把标准系统控件拖拽到应用程序窗口,并最终组装出应用程序的用户界面。可以使用inspector配置组件属性,并在对

33、象和代码之间建立正确关联。当用户界面达到要求后,保存并将这些界面的内容保存到nib文件(一种定制的资源文件格式)。如图2.5所示。图2.5 Interface Builder创建界面使用Interface Builder之后,在创建、配置及摆放界面对象的时候就无需再编写定制代码,因为它是一种可视化的编辑器,编辑时所见的界面即运行时所得。(3)Instruments为确保软件具有最佳的用户体验,在iOS应用程序运行于模拟器或设备上时,可以利用Instruments环境分析其性能。Instruments会收集运行程序的数据,并以时间线方式展现数据。可以采集应用程序数据包括应用程序内存使用情况、磁盘

34、活动、网络活动以及图形性能。使用Instruments调整应用程序如图2.6所示。图2.6 Instruments调整应用程序2.3 本章小结本章对客户端软件的功能需求进行了分析,讨论了客户端应该满足的条件、主要功能和主要任务,最后对客户端划分了功能模块,共包括登陆、最新微博列表、发表新微博、评论微博、转发微博、搜索用户、添加和取消关注七个功能模块。本章第二部分介绍了开发者工具,主要有Xcode,Interface Builder,Instruments三种。第3章 系统的设计3.1 系统总体设计概述新浪微博iOS客户端客户端的系统设计主要分为程序的前端和后端两层,程序的前端主要负责客户端与微

35、博用户之间的交互,后端主要负责网络请求,数据库访问,数据解析的实现。系统由程序的前端微博用户模块和后端管理模块两个主要模块组成,同时具备了设定数据库,访问数据库,修改数据库等多种功能,各个功能模块相互协调工作。下面是系统设计分层体系结构图。客户端分层架构图,如图3.1所示:用户接口前台应用程序接口后台JSON数据解析模块网络模块数据库访问模块图3.1 客户端分层架构图前台部分主要负责客户端与用户之间的交互,包括接收用户请求和显示返回结果两个部分。前台通过调用己经封装好的应用程序接口.IJ以方便使用客户端的各项功能。后台部分主要负责网络请求,数据库访问,数据解析的实现。JSON数据解析模块主要负

36、责对JSON数据的内容进行解析和编码;REST API网络访问模块主要负责新浪微博REST API网络请求;数据库访问模块主要负责本地数据库的读写访问。除了用前后端的形式表现新浪微博iOS客户端客户端的系统设计之外,还要考虑到系统在图形,开放性和安全性方面的设计,下面是新浪微博iOS客户端系统在其他方面的系统设计概述:在功能方面,采用图形用户界面技术,使系统能够有多重图形窗口和丰富便利的操作界面,通过鼠标或键盘的操作,为用户提供最简洁的使用方法。在系统开放性方面,基于优秀的开发平台,再按照软件工程开发规范实现系统的开放性,既便于内容的扩充又便于技术的升级,以适用今后其他人的借鉴需求。在系统和数

37、据的安全性方面,本项目是采用OAuth认证方式,采用这种方式就需要有用户的新浪UserID、Access Token、Access Secret这3个要素才能自由便利的调用新浪的开放接口。本项目是这样实现的,当用户第一次使用软件时,进行授权认证获取这3个要素,同时将其存储到SharedPreferences中以便用户下次使用。当用户再次使用时就不需要重新进行繁琐的授权认证操作,直接从SharedPreferences中读取出来即可使用。这样的需求载入页面的功能设定是这样实现的:当用户打开软件显示载入页面时开始检查SharedPreferences中是否已经保存有用户的新浪微博的UserID号、

38、Access Token、Access Secret的记录,如果一条记录都没有那就说明用户是第一次使用本软件,那么跳到认证授权页面进行授权认证操作(认证授权功能在接下来的两篇中进行实现讲解)获取这3个值保存到SharedPreferences中,如果已经包括了记录那么读取这些记录的UserID号、Access Token、Access Secret值然后根据这3个值调用新浪的API接口获取这些记录对应的用户昵称信息等。OAuth认证的原理如下图3.2所示:客户端新浪微博服务器将APPKEY和APPSECRET发送至新浪微博返回RequestToken和RequestSecret给客户端表示新浪

39、微博信任客户端 将RequestToken和RequestSecret发送至新浪微博跳转至授权页面授权页面输入账号密码完成授权根据回调地址返回oauth_verifier,表示用户信任客户端将RequestToken、RequestSecret、oauth_verifier发送至新浪微博返回user_id、AccessToken和AccessSecret用来代替账号密码图3.2OAUTH2.0认证原理图3.2 系统模块设计3.2.1 用户注册模块功能描述:在用户第一次使用该应用时,如还未获得新浪微博的账号,可以通过配置页面跳转到新浪微博的用户注册页面。参与者:未注册的用户。前置条件:所有未注册

40、的用户。后置条件:提示注册是否成功。该模块用例如下图3.3所示:未注册用户用户注册图3.3 用户注册用例图3.2.2用户登陆和授权模块功能描述:对于第一次使用该应用的用户,在程序启动之后进入配置页面,输入用户名和密码进行授权认证。对于用户在自己的手机上使用过或者已经通过了授权认证则可以不用输入用户名和密码就可以选择用户进行登录。参与者:未通过授权认证或者未登录。前置条件:未通过授权认证或者未登录的用户。后置条件:通过授权配置或者直接登录系统。用户登录和授权模块用例如下图3.4所示:用户通过授权认证选择用户进行登录图3.4 用户登录和授权认证用例图用户登录和授权模块流程图如图3.5所示:判断是否

41、存在已授权用户授权配置开始启动应用登录登录到应用首页结束是否图3.5 用户登录和授权流程图3.2.3系统第一界面展示模块功能描述:显示被用户添加关注的好友的最新微博信息。参与者:合法登录用户。前置条件:已登录用户。后置条件:在首页显示所有被用户添加关注的最新微博信息列表。该模块用例如下图3.6所示:用户查看微博列表搜索用户发表新微博图3.6系统首页信息显示用例图系统首页显示模块流程图如图3.7所示:加载数据开始进入首页发表新微博结束显示最新微博的列表搜索其他用户图3.7 显示主界面流程图3.2.4发表微博模块功能描述:该模块主要实现了用户发表微博的功能。参与者:合法登录用户。前置条件:已登录用

42、户。后置条件:新微博信息是否发表成功。该模块用例如下图3.8所示:用户发布微博图3.8发表微博用例图发表新微博流程图如下图3.9所示:点击首页微博发送按钮开始输入内容点击发送判断结束发送失败图3.9 发表微博流程图3.2.5搜索相关用户模块功能描述:该模块主要实现了通过关键字搜索相关用户的功能。参与者:合法登录用户。前置条件:已登录用户。后置条件:搜索成功返回结果。搜索模块用例如下图3.10所示:用户查看返回的用户列表添加对搜索到用户的关注输入关键字搜索图3.10搜索用例图搜索功能流程图如下图3.11所示:开始输入关键词显示与关键字相关的微博用户列表点击某一用户进入该用户详细信息页面添加关注或

43、者返回结束图3-11搜索功能流程图3.2.6查看微博内容模块功能描述:该模块实现了用户可以通过点击某一条微博信息查看该微博的所有内容,并进行评论和转发操作。参与者:合法登录用户。前置条件:已登录用户。后置条件:可以转发和参与评论。查看微博内容模块用例如下图3.12所示:查看微博详细信息转发评论用户图3.12 查看微博用例图评论微博功能流程图如下图3.13所示:点击评论按钮进入评论页面开始结束输入评论内容点击发送判断评论失败图3.13 评论功能流程图转发功能流程图如下图3.14所示:点击评论按钮进入转发页面开始结束输入转发内容点击发送判断转发失败图3.14 转发功能流程图3.2.7查看用户信息模

44、块功能描述:查看好友的详细信息。参与者:合法登录用户。前置条件:已登录用户。后置条件:查看好友详细信息(包括所有微博,话题,关注,粉丝)关注和取消关注操作。查看用户信息模块用例如下图3.15所示:添加对好友粉丝的关注对好友进行关注和取消关注添加对好友所关注用户的关注查看好友的详细信息查看好友的关注列表用户查看好友所有微博信息查看好友的所有话题查看好友的粉丝列表图3.15 查看用户信息用例图查看关注和添加关注功能具体流程图如下图3.16所示:点击进入关注列表开始结束查看用户信息添加关注图3.16 查看关注和添加关注流程图查看用户所有微博列表功能流程如下图3.17所示:结束点击微博按钮 开始用户所有微博列表界面查看某一条微博详细信息同时进行评论和转发操作图3.17 查看用户所有微博列表流程图3.2 系统后端访问层设计后端主要负责网络请求,数据库访问,数据拆分的展示。JSON数据分析模块,统一重点承担对JSON数据和代码的内容;REST API数据交互机制统一重点承担新浪微博iOS客户端RESTAPI客观待遇;通过数据库机制统一重点承

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 毕业论文/毕业设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服