计算机系基于Android的电影播放系统毕业设计论文毕业论文_第1页
计算机系基于Android的电影播放系统毕业设计论文毕业论文_第2页
计算机系基于Android的电影播放系统毕业设计论文毕业论文_第3页
计算机系基于Android的电影播放系统毕业设计论文毕业论文_第4页
计算机系基于Android的电影播放系统毕业设计论文毕业论文_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、前言基于Android的电影播放系统1前言随着中国网络的发展,截至2013年12月,我国网民规模达6.18亿,全年共计新增 网民5358万人。互联网普及率为45.8%,较2012年底提升了 3.7个百分点,普及率增长 幅度与2012年情况基本一致,整体网民规模增速持续放缓。与此同时,手机网民继续 保持良好的增长态势,规模达到5亿,年增长率为19.1%,手机继续保持第一大上网终 端的地位。而新网民较高的手机上网比例也说明了手机在网民增长中的促进作用。2013年中国新增网民中使用手机上网的比例高达 73.3%,远高于其他设备上网的网民 比例,手机依然是中国网民增长的主要驱动力。显而易见这是3G/4

2、G无线网络功劳,越来越多白人采用3G/4G,因为它不仅可以上网,甚至能达到宽带的水平,我们可在 在上面浏览图片,聊天,看电影。科技带动生活,从那个全村人集体放录像的电影时代到现在,电影逐渐成为生活的一部分。第1页(共46页)基于Android的电影播放系统2选题背景手机现已成为人类生活中必不可少的生活工具。 从最初的电话及时间查看功能到 由被诺基亚公司收购的塞班公司所研发的塞班智能手机, 移动终端进入到了飞速发展 的阶段。Symbian诺基亚可以说是一个时代的象征,在它鼎盛的时期可以说即使微软也 无法与之相比。相信每个人都会有一部诺基亚的手机,它简洁的界面、强大的功能、 优良的做工让我们都无法

3、忘却。然而每个时代都逃脱不了科技的发展,2012年Symbian 系统的市场占有率缩减到了 5%我们在为诺基亚默默祈祷的时候,Android、IOS悄然 走进我们的生活,改变着这个世界。Android 系统是一一款建立在Linux基础上的移动终端操作系统,凭借其开源性、安 全性被广泛的使用在各大厂商的手机及移动 PC品中。2011年第一季度,Android在 全球的市场份额首次超过塞班系统,跃居全球第一。2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%。2013年09月24日谷歌开发的操作系统Android在迎来了 5岁生日,全世界采用这款系统的设备数量已经达到10

4、亿台。国产手机在Android的带动下也迎来了春天,不再是以前“差”的代名词。华为、 小米、魅族这些基于 Android的手机已经占领了中国手机的半壁江山。这同时给 Android软件开发的工程师们带来了极大的方便和市场。Android系统的开放性和平台 的优良性使得Android软件的开发很轻松很简单。但是我们如何找到一部好看的电影?如何知道电影的基本信息?如何快速找到 观看地点甚至直接能在随时随地播放一直困扰的人们。一款专业开放的软件,能运行 在占有率最高的Android平台上或许能很好的解决这些难题。这款基于Android的电影播放系统Ap甫9充分利用Android系统的平台和网络优势

5、满足人们对电影观看的需要。我们可以提供电影的推荐及播放收录电影的检索,以及结合二维码扫描的便捷识别方式给每个有需求的影迷提供准确快捷的电影信息。第2页(共46页)方案论证3方案论证系统开发思想系统结构系统软件的开发主流的分为两个方式:B/S和C/S。本次我们需要的是在Android 手机平台上安装客户端,在we渊对后台进行管理。下面就对C/S和B/S模式进行具体 的阐述:C/S结构,如图1所示,即大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统间通讯开销。目前大多数应用软件系统都是 Cli

6、ent/Server形式的两层结构,由于现在的软件应用系统正在向分布式的 WelE用发 展,We冰口 Client/Server应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。C/S结构的基本原则是将计算机应用任务分解成多个子任务,由多台计算机 分工完成,即采用“功能分布”原则。客户端完成数据处理,数据表示以及用户接口 功能;服务器端完成DBMS数据库管理系统)的核心功能。这种客户请求服务、服务 器提供服务的处理方式是一种新型的计算机应用模式。Cli

7、ent和Server常常分别处在相距很远的两台计算机上,Client程序的任务是将用户的要求提交给Server程序,再将Server程序返回的结果以特定的形式显示给 用户;Server程序的任务是接收客户程序提出的服务请求,进行相应的处理,再将结果返回给客户程序。B/S结构(Browser/Server ,浏览器/服务器模式),如图2所示。是WEB起后的 一种网络结构模式,WEB览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器,如 Netscape Navigator或Internet Expl

8、orer ,服务器安 装SQLServer、Oracle MYSC数据库。浏览器通过 WebServer同数据库进行数据交互第3页(共46页)基于Android的电影播放系统Browser/Server结构主要是利用了不断成熟的 We浏览器技术:结合浏览器的多 种脚本语言和ActiveX技术,用通用浏览器实现原来需要复杂专用软件才能实现的强 大功能,同时节约了开发成本,如图二所示B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件,只要 有一台能上网的电脑就能使用,客户端零安装、零维护。系统的扩展非常容易。B/S结构的使用越来越多,特别是由需求推动了 AJAXJ术的发展,它的程序

9、也能 在客户端电脑上进行部分处理,从而大大的减轻了服务器的负担;并增加了交互性, 能进行局部实时刷新。a闺唱图2 B/S结构图第4页(共46页)方案论证系统前台开发思路为了使用方便,我们采用Android操作系统作为我们此次系统前台的开发平台。 我们将系统的前台做成一款手机 APP可以随时安装和调试。前台的主要功能是承担 人与后台数据的交互,即表示层。手机通过网络连接系统的后台。同时获取有关数据 呈现在我们面前并得到我们的操作将信息传输至后台。用户可以通过可视化的界面来查看从后台传输来的数据,这是系统开发的最核心的目的。系统后台开发思路系统后台是整个系统的应用层。系统后台分为两个部分:一个是服

10、务器,主 要是Servlet编写,它连接着数据库和系统前台,各项文件的传输和各种操作都是由 服务器完成。另一个是后台管理,通过简单的JSP页面编写,主要是对数据库中的数 据进行管理、更新。系统后台是系统中最重要的部分。系统相关技术后台相关技术现在比较成熟的技术主要有ASP PH的JSP。由于本次客户端使用服务器对数据 进行处理即可,所以将采用Servlet技术。后台管理采用JSPK术。Servlet (Server Applet ),全称Java Servlet 。是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态 We的容。狭义的Servlet是指 Java语言实

11、现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一 般情况下,人们将Servlet理解为后者。Servlet运行于支持Java的应用服务器中。从原理上讲,Servlet可以响应任何类 型的请求,但绝大多数情况下Servlet只用来扩展基于HTT胁议的Web艮务器。最早支持Servlet标准的是JavaSoft的Java WebServer。此后,一些其它的基于 Java的Web艮务器开始支持标准的Servlet 。Servlet是在服务器上运行的小程序。这个词是在Java applet的环境中创造的,Java applet是一种当作单独文件跟网页一起发送的小程序,它

12、通常用于在客户 端运行,结果得到为用户进行运算或者根据用户互作用定位图形等服务。服务器上需要一些程序,常常是根据用户输入访问数据库的程序。这些通常是使第5页(共46页)基于Android的电影播放系统用公共网关接口( Common Gateway Interface , CGI)应用程序完成的。然而,在服 务器上运行Java ,这种程序可使用Java编程语言实现。在通信量大的服务器上, JavaServlet的优点在于它们的执行速度更快于 CGI程序。各个用户请求被激活成 单个程序中的一个线程,而无需创建单独的进程,这意味着服务器端处理请求的系统 开销将明显降低。JSPir名为Java Ser

13、ver Pages,中文名叫java服务器页面,其根本是一个简化的 Servlet设计,它1 是由Sun Microsystems公司倡导、许多公司参与一起建立的 一种动态网页技术标准。JSPK术有点类似ASPfc术,它是在传统的网页HTML标准通 用标记语言的子集)文件(*htm,*html)中插入Java程序段(Scriptlet)和JSPB记(tag),从而形成JSPt件,后缀名为(*.jsp)。用JSPFF发的Web用是跨平台的,既 能在Linux下运行,也能在其他操作系统上运行。它实现了 Html语法中的java扩展(以%, %形式)。JSPf Servlet 一样,是在 服务器端执

14、行的。通常返回给客户端的就是一个HTMLC本,因此客户端只要有浏览器 就能浏览。JSPU术使用Java编程语言编写类XMLtags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets 访问存在于服务端的资源的应用逻辑。 JSP等网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于 Web 的应用程序的开发变得迅速和容易。JSP(JavaServer Pages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。Java Servlet是JSP的技术基础,而且大型的WebZ用程序的开发需要JavaServlet和JSF

15、合才能完成。JSPM备了 Java技术的简单易用,完全的面向对象,具 有平台无关性且安全可靠,主要面向因特网的所有特点。数据库技术MySQL是一个关系型数据库管理系统,由瑞典 MySQLAB公司开发,目前属于 Oracle旗下公司。MySQLi流行的关系型数据库管理系统, 在WEB应用方面MySQL 是最好的 RDBMS (Relational Database Management System ,关系数据库管理系统) 应用软件之一。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的 表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQLM使用的SQ

16、L语言是用于访问数据库的最常用标准化语言。MySQK件采用第6页(共46页)方案论证了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体积小、速 度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL作为网站数据库。由于其社区版的性能卓越,搭配 PHP和Apache可组成良 好的开发环境。Android 技术Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设 备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。 尚未有统一 中文名称,中国大陆地区较多人使用“安卓”或“安致”。Android操作系统最初由

17、Andy Rubin开发,主要支持手机。200外8月由Google收购注资。2007年11月,Google 与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良 Android系统。随后Google以ApacheFF源许可证的授权方式,发布了 Android的源代码。 第一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑及其他领域 上,如电视、数码相机、游戏机等。2011年第一季度,Android在全球的市场份额首 次超过塞班系统,跃居全球第一。二维码技术二维条码/二维码)是用某种特定的几何图形按一定规律在平面(二维方向上) 分布的黑白相间的图

18、形记录数据符号信息的;在代码编制上巧妙地利用构成计算机内部逻辑基础的“ 0”、“1”比特流的概念,使用若干个与二进制相对应的几何形体来 表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处 理:它具有条码技术的一些共性:每种码制有其特定的字符集;每个字符占有一定的 宽度;具有一定的校验功能等。同时还具有对不同行的信息自动识别功能、及处理图 形旋转变化点。运行环境和开发工具的选择运行环境系统运行环境: Windows 10JAVA云行环境:JDK 1.8第7页(共46页)基于Android的电影播放系统Android运行环境:SDK开发工具服务器开发工具:Myeclipse

19、Profession 2014+Tomcat数据库开发工具:Mysql 5.6+NavicatAndroid 开发工具:Eclipse+ADT-22.6.2 插件第8页(共46页)系统详细设计4系统详细设计系统功能模块设计前台功能模块设计客户端是整个系统的用户交互界面,是系统开发的首要目的。客户需要在Android 手机上装上我们所开发的客户端,如图3所示。首先,初始界面应该是登陆界面,用户需要在该界面输入用户名跟密码。 当服务 器对个人信息进行匹配成功后即可进入主界面。如果没有用户名,我们还要提供一个 跳转,进入注册界面。按要求填写好后提交,后台服务器将数据写入数据库。等待注 册成功提示,然

20、后返回登陆界面进行登陆。其次,当成功登陆后,界面跳转到我们软件的主界面。在该界面,我们分为三个 Tab第一个界面是我么所推荐的电影列表。第二个 Ta昵所有的电影列表以及搜索框, 我们可以输入搜索的信息进行查找,并以列表的方式呈现给用户。第三个Tab一个二维码扫描按钮,我们可以点击该按钮调用相机进行二维码扫描。当我们获取到自己想要找的电影列表后, 点击该影片名。界面会跳转到信息详情 页,在该页面,主要包含有关于这部电影的海报、简介、预告片以及观看链接。我们图3前台功能模块图可以点击查看,或者通过调用浏览器来访问相关信息。最后,在主界面的顶端有用户图标,用户点击后可以进入个人信息页。 在该界面第9

21、页(共46页)基于Android的电影播放系统包含个人的基本信息以及退出按钮。后台功能模块设计服务器是整个系统的中间层,也是该系统实现的核心。它的主要任务是建立业务 的逻辑关联和后台管理等功能,保证用户操作的正确性以及个人信息的安全性,如图4所示。首先,我们需要一个数据库的基础操作方法。 包括定义数据库连接、关闭以及增 删改查的基本操作,并返回结果集。其次,我们需要一个对用户操作类型的层。该层调用基础操作方法。实现对数据 库的实际操作以及数据的处理。然后,我们需要一个对客户端的结合层。 该层调用实际操作层,执行对客户端数 据的处理,完成数据的传入传出。最后,我们需要一个网页应用来为我们的数据进

22、行更新与普通用户的账户管理等 功能图4后台功能模块图数据库设计数据库关系模式在设计数据库时,通常用“范式(Normal Forms)”定义消除数据冗余的程度,范 式越高,分解的表也增多,访问时性能(速度)将下降。因此在本设计中我主要以第 三范式为主,兼顾系统实际运行情况,允许部分冗余的存在。下面是E-R图,向关系模型转换后的部分关系模式:第10页(共46页)系统详细设计用户(用户名称、用户ID、用户密码、年龄、)电影简介(电影ID、电影名称、电影海报、影片时长、)电影详情(电影ID、电影名称、上映时间、主演人员、电影介绍、电影短片、)电影海报(电影 ID、picture1 、picture2、

23、pictures、picture4、)电影短片(电影 ID、video1、video2、video3、video4、)管理员(用户名称、用户ID、用户密码、年龄、)4.2.2数据库表结构表1是设计中所用到的所宿表的名称及相关作用描述:表1 系统所后表数据库表名描user用户movies电影简介存储电影简介moviesfull电影详情存储电影详情moviespicture电影图片存储电影图片moviesvideo电影短片存储电影短片super管理员存储管理员信息(2)创建表:在对表的具体设计时我们以user表为例,如表2所示。本表是严格按照第三范式来设计的,用户ID为主属性,可以作为主索引,其它

24、为 非主属性。首先建立数据库MySql,再建立表user。其中ID为主键。CREATE TABLE user (ID int(11) NOT NULL AUTO_INCREMENT,username char(20) NOT NULL DEFAULT ,password char(20) NOT NULL DEFAULT ,age char(20) NOT NULL DEFAULT ,gender char(20) NOT NULL DEFAULT ,job char(20) NOT NULL DEFAULT ,第11页(共46页)基于Android的电影播放系统表2 用户表的设计列名类型/大

25、小键/允许空描述IDInt/4主键对记录标识递增量 1usernameVarchar/20否用户名passwordVarchar/20否密码ageVarchar/20否年龄genderVarchar/20否性别jobVarchar/50是工作PRIMARY KEY (Id)ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8表3电影简介表的设计列名类型/大小键/允许空描述movieIDInt/4主键对记录标识递增量 1moivenameVarchar/20否电影名称moivepicVarchar/20否电影海报longVarchar/20否电影

26、时长表4电影详情表的设计列名类型/大小键/允许空描述movieIDInt/4主键对记录标识递增量 1moivenameVarchar/20否电影名称showtimeDatatime否上映时间actressVarchar/20否主演人员introductionVarchar/20电影简介movieVarchar/50否电影短片第12页(共46页)系统详细设计表5电影图片表的设计列名类型/大小键/允许空描述MovielDInt/4主键对记录标识递增量 1picturel 、Varchar/20否图片1picture2Varchar/20是图片2picture3Varchar/20是图片3pictu

27、re4 V;irchar/20是图片4表6 电影短片表的设计列名类型/大小键/允许空描述MovieIDInt/4主键对记录标识递增量 1movie1Varchar/20否短片1movie1Varchar/20是短片2movie1Varchar/20是短片3movie1Varchar/20是短片4movie1Varchar/50是短片5表7管理员表的设计列名色/大小键/允许空描述superIDInt/4主键对记录标识递增量 1nameVarchar/20否管理员名称spasswordVarchar/20否密码sageVarchar/20否年龄sgenderVarchar/20否性别sjobVar

28、char/50是工作第13页(共46页)基于Android的电影播放系统系统的性能设计在网站测试完之后,我就要使它成为公共的站点。这主要是将我的网站上传到 WEB 服务器上,然后在 WEB务器上配置好数据库,并用预先申请的域名映射到这个 WEB 服务器的IP地址。与传统的软件系统不一样,We原统是比较灵活的,它需要经常更新的。这种更 新包括细微的变化到大规模的变化, 可以是页面内容的刷新、也可以是整个页面结构 框架的更新(例如:整个主页结构的变化、增加或变更一个栏目。正是因为这种改变 是经常存在的,所以大型 WelE用系统的管理是一项艰巨的任务。对每一种变化,无 论大小,都需要以一种合理的,有

29、控制的方式进行处理。源程序代码的逻辑简明清晰、易读易懂是编码一个重要标准,为了做到这一点应 该做到下述规则:(1)程序内部文档:它包括恰当的标识符,适当的注解和程序的视觉组织等。(2)数据说明:数据说明的次序应该标准化,如果多个变量名在一个语句中说 明时,应该按字母排列。(3)语句构造:遵循简单、高效,尽量少使用嵌套和复杂的条件测试。(4)输入/输出:对所有输入、输出数据进行检验,以验证其是否合法,并保持 输入格式一致(5)效率:尽量减少时间和空间的复杂度。在WEBU试中,由于设计时是按功能模块进行开发的,因此开始就进行自顶向下 测试是比较困难的。我在单元测试通过的情况下,然后再把它们整合到一

30、起进行集中 测试。对于少数的关键功能模块,我采用自顶向下的方法,以早期发现模块连接和功 能实现上的错误。由于WE牵涉的页面比较多,并且大部分都涉及到页面的安全性问题。因此,除 了常规的测试之外,我还要进行破坏性和强度测试系统的安全性设计由于后台管理是以WEB式运行,因此它的安全性来源于运行环境和系统本身。 对于运行环境我们应该及时进行安全跟踪,不断的对其中涉及到的软件进行升级和替第14页(共46页)系统详细设计换,以防止存在不安全漏洞而被黑客攻击。对于系统本身:为防止代码外泄可以用微 软的对系统进行加密,其中对于存在不安全隐患的代码,例如:地址栏中的敏感参数 的显示和非正常使用出现的错误,要及

31、时的进行修改和预防。第15页(共46页)基于Android的电影播放系统5系统实现系统前台框架结构通常程序中的一个模块完成一个适当的子功能。 应该把模块组织成良好的层次系 统。我们在对模块设计时应该遵循启发式规则,使得模块规模适中,深度、宽度、扇 出和扇入适当,并在设计模块时尽量使模块独立,做到高内聚,低耦合,并保持信息 隐蔽和局部化原则。在基于Android的客户端设计中,对系统的功能进行严格的划分是比较重要的, 这样可以进行有效和完善的管理。因此从设计上的需要我把它分为前台信息的浏览、 处理和后台数据、文件的管理图5前台代码结构在MyEclipse 中新建 Android App Proj

32、ect ,命名为 AndroidHTTPDemo 如图五所示:登陆和注册页面:布局文件login.xml , register.xml登陆和注册页面对应的Activity 组件,在activity 中进行具体操作login.java , register.java 能够实现Http 以get/post 方式通信的类 WebService.java ,第16页(共46页)系统实现WebServicePost.java网络通信权限一下是Manifeast配置文件的主要内容,如图六所示:JD1 LogiiLjdvd D Register S| AndroidHTTTPDerno ManifesL k

33、uses-perni ssion an droid: a ncfroi d. Z mi ss i on ACCESS_NETWOBJ(STRTE, uiEG-ponkisfiion android 3Danne:i*dr?tirO!icJ.porjiTi sion * internet啊 ; 士. ppi Ic&tl OTlamdro id:al lows aGkup=t17amdroid; cfrawaJb ie/i g_1 aun c 力 mr,android:label111 striny/upp 门口所总声android: theite : f tyle/AppThenie、activ

34、ity aLndrdd:man=c3/it:pdwroRiey_ts:t_r21229and m L d: mm七由.帆卬表皿.Log j n ”2 4android si ab电dpp_醒占同也 p 图6配置文件图5.1.1前台登陆模块该模块包含登陆和注册两个功能,我们要使用该系统的后续功能时需要采用登陆 的方式才能进入到系统的主界面当我们点开软件时,第一页面是我们的登陆界面。该 页面主体是用户名输入框、密码输入框以及“登陆”按钮,下方还有“没有账号?去 注册”的页面跳转文字。我们有输入账号密码点击登陆的选择以及点击“没有账号? 去注册”去注册两种选择。注册页面跟登陆界面类似主要是用户名输入

35、框、密码输入框以及“注册”按钮, 下方有“已有账号?立即登陆”的页面跳转文字,我们可以点击跳转回到登陆页面。 如图7所示。public class MyThread implements Runnable Override第17页(共46页)基于Android的电影播放系统public void run() infoWebService.executeHttpGet(username.getText().toString(), password.getText().toString();/infoWebServicePost.executeHttpPost(username.getText()

36、.toString(), password.getText().toString();handler.post(new Runnable() Override public void run() infotv.setText(info); dialog.dismiss(); );重写登陆按钮,绑定监视器,首先验证是否能连接网络。其次,检查文本框中的 密码以及账号是否为空。最后,创建子线程,分别进行Get和Post传输。图7登陆界面第18页(共46页)系统实现5.1.2电影推荐模块该界面主要是推荐最近最新的电影给用户并以列表的方式推送到电影推荐模块, 当我们进入系统主页面首页就是电影推荐页面,

37、我们可以通过点击列表中的电影进入 到电影详情界面,如图8所示。等送诙C. :图8电影推荐模块5.1.3电影查询模块电影查询可以分为两种情况:一种是通过电影推荐页面上方的搜索框输入我们要 搜索的电影名称,系统会根据关键字模糊查询有关的电影并以列表的方式呈现在我们 面前。第二种是通过二维码扫描技术,扫描电影的二维码并直接跳转到该电影的详情 页。下面以二维码扫描为例进行描述:Log.d(TAG, Got decode succeeded message);state = State.SUCCESS;第19页(共46页)基于Android的电影播放系统Bundle bundle = message.g

38、etData();Bitmap barcode = bundle = null ? null :(Bitmap) bundle.getParcelable(DecodeThread.BARCODE_BITMAP);activity.handleDecode(Result) message.obj, barcode);break;获取图片解码在DecodeThread里面实现DecodeThread里面解码成功后,会吧数 据序列化,然后保存到Bundle里面,我们可以直接通过Bundle的序列化,获取到图 片的数据。同时会吧解码后的结果保存到 MSG!面。图9媒体搜索图10二维码搜索5.1.4电

39、影信息显示当我们通过上面三种方法找到所需要的电影时,我们会跳转到电影详情页面,在该页面我们可以看到电影的上映时间、简介、海报等相关信息。并且,我们可以通过第20页(共46页)系统实现点击下方的电影短片来观看影片或者预告。如图 11所示言制电JI&律I7图11电影信息显示5.1.5电影播放模块该界面主要是在电影详情页面对所获取到的电影短片进行播放public void onClick(View v) try String filename = filenameText.getText().toString();switch (v.getId() case R.id.play:/得到文件名称重点代

40、码String filenames = filenameText.getText().toString();第21页(共46页)基于Android的电影播放系统/第一步对给对象进行重设mediaPlayer.reset();/设置流的类型关键代码mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);/设置数据来源mediaPlayer.setDataSource(/sdcard/ + filenames);/设置需要播放的视频/把视频输出到显示控件上重点代码mediaPlayer.setDisplay(surfaceView.get

41、Holder();/播放时前需要缓冲一下mediaPlayer.prepare();mediaPlayer.start();主要是获取数据来源并将数据流显示在mediaPlayer控件中。当然这里我们还可以通过调用第三方视频播放工具直接播放该视频。图12电影播放5.2系统后台模块设计.新建Web Project ,命名为HelloWeb。如图13所示DBManager.java私有化DBManage的构造函数,定义一个静态的成员变量,在一个共有方法第22页(共46页)系统实现中实例化该成员变量。若要实例化对象调用此方法即可。同一时间该类只能存在一个对象。符合sql对象习惯。(此方式有缺陷,具体

42、自行搜索)样 HelioWeb 田 COIH-db卜 DBManager.jdvaT B com.service星I Serviee.javaT 由 corn.servlet国 LogLetjava卜团 RegLetjavaa Efe. JRE System Library JavaSEA JavaEE 6.0 G eneric L ibrary卜 E& Web App LibrariesMJSTL 1.2.1 Library& build* &WebRoot &META-INF* & WEB-INF &lib web .xml图13后台代码结构定义数据库连接、关闭以及增删改查的基本操作,返回

43、结果集。Service.java这个简单,根据传参得到sql语句,通过DBManage#!的createInstance() 方法 实例化对象,调用本类的操作方法,完成数据操作。写到这里,可以预见:下一个类 会通过调用本类方法完成登陆/注册的服务。LogLet.java一个简单的Servlet ,用于处理Http请求(get/post )。果然,实例化上一个类 的对象,并调用了 login方法,返回值为布尔类型。RegLet.java和该类近乎相同,只 是在 serv.login(username, password); 换成了 serv.register(username, password

44、);此处省去第23页(共46页)基于Android的电影播放系统2、项目结构图如下:这里我们采用servlet编程,所以不需要任何jsp页面。LogLet 类和RegLet类分别用于处理客户端的登陆和注册请求;Service类用于完成servlet对数据库的具体操作;DBManage#1用于进行数据库基本操作;左侧是项目图,右侧管理员登陆模块设计在原来的服务器项目HelloWeb项目中添加JSPM面:1网页登陆的界面,用户在此页面填写用户名密码的网页文件Login.htmlRegister.html2用于处理页面输入验证的JS文件login.js , register.js31E陆的处理文件

45、LoginServlet.java , RegisterServlet.java下面是web.xml的截图,如图15所示。uwrvlw与*hMt-l 1 3”勺门孑in mTETplL口4勺1. mervief?M M! rv 1 r -pen F、serviq 日 ervlet raappin 尹=三日、kt-xaxii已-二 alidalioxidE,serrletY加:uswl咤m arep帕.OlidlaMonCode /vrtT 加mQ sen.-LeOcrvlrt-mappji 自二alxdjtiCi_de let- tiaie -ir 1-prttern. =tlidaEioiL

46、Uod;- irl-peltcm 生七i Let tmprjjnii j -图15 web截图资料库后台管理图16后台登陆第24页(共46页)系统实现5.2.2电影更新模块设计该模块主要是对电影的详细信息进行增删改等更新操作,如图17所示public boolean executeUpdate(String sql) if (con = null) creatConnection();try Statement stmt = con.createStatement();int iCount = stmt.executeUpdate(sql);System.out.println(操作成功,所影

47、响的记录数为+ String.valueOf(iCount); return true; catch (SQLException e) System.out.println(e.getMessage();return false;/对数据库的查询操作public ResultSet executeQuery(String sql) ResultSet rs;try if (con = null) creatConnection();Statement stmt = con.createStatement();try rs = stmt.executeQuery(sql); catch (SQL

48、Exception e) System.out.println(e.getMessage();return null;第25页(共46页)基于Android的电影播放系统 catch (SQLException e) System.out.println(e.getMessage();System.out.println(executeQueryError!);return null;return rs;图17电影更新5.2.3用户管理模块设计该模块主要是对用户的个人信息进行增删改等操作,主要方法还是通过调用DBManager.java类中的增删改操作对数据进行修改,如图 18所示。图18用户

49、管理第26页(共46页)系统部署6系统部署前台的部署(1):将java 工程的配置文件放入/usr/local/tomcat/bin 中,例如:将工程 conf目录下所有的配置文件复制到/usr/local/tomcat/bin/conf 中。(2):修改/usr/local/tomcat/conf 中的server.xml 和 web.xml 修改相应的设置。 如:虚拟路径(3):在/usr/local/tomcat/webapps中建立工程目录,把java web工程复制到此目录下,如图19所示。数据库的部署在设计中我采用的是JDBC方式连MySql数据库,服务器名:ZHLL账户为:roo

50、t , 密码为:zhuyu123,数据库名为:text ,方法为:DBManager后台的部署Android项目的调试方式有两种,一种是在模拟器上进行模拟,另外一种是在真 机上直接调试。在真机上,我们首先要打开手机上的US明试模式,将手机与电脑用数据线连接。在Android项目上右键-运行方式-Android Application 等待文件上传到手机上。在模拟器中类似,首先我们要建一个模拟器:进入 android-sdk-windows 目录,找到 AVD Manager.exe, 双击运 行 AVD Manager.exe o点击右边的new 按钮,新建虚拟机并填写一些信息,如 Name

51、SD大第27页(共46页)基于Android的电影播放系统小,填写,主要信息,正确后,确认按钮可以使用。Android项目上右键-运行方式-Android Application 等待文件上传到模拟器 上。我们用真机进行测试这里的IP是你的服务器IP,不确定时看下是否能用手机ping 工具ping通。,我简单说一下真机与 windows/linux下的服务器网络连接流程:你的服务器端程序已发布到互联网:这好办,就是你的IP地址。你是在本地电脑上,这要求你的真机和你的电脑在同一个局域网。两种较方 便的方法:路由器/笔记本的无线网卡是个人都能看出来第二种方便,谁也不能到哪 都带个路由器吧,那么好,

52、笔记本开启无线热点,手机 wifi连接热点,这是客户端和 服务器就在一个局域网内。查看笔记本ip地址中的无线网卡地址(winipconfig/lnxifconfig - wlan),加上你的服务器端口号(服务器为开启状态),访问即可。conn.setConnectTimeout(3000);需要设置超时时间,否则会 执行默认超时时间,30s ?接收到的输入流需要先转换成比特位,在转换成string类型。Problems Tasks H Web Browser几 Servers 也 Project MigrationmyedipseTomcatServer Remote Java Applica

53、tion/home/shan/jsp/myeclipse/binary/coadmin-adminConnecting to databasetSqlManager:Connect to database successful,Close connection to database*Close connection successfulSuccss图19服务器连接第28页(共46页)总结7总结时间过得飞快,从大一到大四,从刚论文是什么的疑问到已经写到论文的结尾, 大学的时光就这样过去了。曾经懵懂的我们开始担心自己的未来, 我们来大学学了什 么?懂得了什么?又做了什么?每个人心中都有不同的答案

54、。刚开始毕业设计的时候心里很紧张,题目各种各样涉及到的知识也是五花八门。 我从未想到自己会将他完成。Android这个我们天天用却不知道到的知识让我又爱又 怕,既兴奋又畏惧。幸而得到张佳老师的帮助,从题目的确定到知识点的巩固,我花 费了很长的一段时间。尤其是 Android的项目开发与设计,运行环境的搭建,工具的 使用,项目的组成,让我深刻理解到了一个软件的运作方式, 为后来的开发打下基础。 紧接着是界面的设计,看到有的人设计的可谓巧夺天工, 而自己却十分简洁,后来发 现其实实现功能的代码都是很一般没有说不能理解的, 我们所学的知识大多都是想同 的,这让我放下了心里的包袱。一个系统的实现并不是

55、一个单纯的软件,就像没有电的灯泡无法照亮前进的路。数据库的实现,服务器的搭建,看似独立的东西其实都是各司其职, 当我们把它们结 合在一起,一个个令人惊奇的功能展现在我们面前。其实世界又何尝不是这样,我们 不要在意最好的职位是什么,而是要在自己自己的本职上做到最好,不断更新自己。但是在此次毕业设计中自己还存在很多不足,首先是基础知识不牢固,对面向对象语言理解不够深刻。其次是自己容易粗心大意,导致一个小问题要调试很久还找不 到。在以后的学习生活中我会加倍努力,不骄不躁,以饱满的状态面对挑战第29页(共46页)基于Android的电影播放系统参考文献汪晓平、钟军.JSP网络开发技术M.北京:人民邮政

56、出版社,2013年12月第二版.张一鸣、桂林、张家祥.个人网站组建实用教程M.西安:电子科技大学出版社,2014年3月第一版.龙马工作室.JSP+ SQL组建动态网站M.北京:人民邮电出版社,2014年8月第一版.王斐 Java Web开发基础一一从 Servlet 到JSP清华大学出版社,2014.10.陈秋江,朱海东网页设计制作与上级指导第1版.北京:清华大学出版社,2013张泽娜.JavaScript 实战一JavaScript、jQuery、HTML5 Node.js 实例大全北京:清 华大学出版社,2014.吕琨JavaScript网页特效实例大全清华大学出版社,2013.薛华成 管

57、理信息系统北京:清华大学出版社,2012蔡翠平、尚俊杰.网络程序设计一JSPM.北京:清华大学出版社,2012年1月第一版.10姚国章.中国企业电子商务发展战略M.北京:北京大学出版社,2011.11黄平 数据库技术 北京:机械工业出版社,2012.12袁玫网络数据库应用教程北京:人民邮电出版社,2013.13郭瑞军、李杰、初晓璐JS琳据库开发精粹电子工业出版社,2010年2月第一版.14耿祥义,张跃平.JSP实用教程M.北京:清华大学出版社,2003.15张海藩.软件工程导论M.北京:清华大学出版社,2007.5.16王珊.数据库系统概论(第四版) M.高等教育出版社,2007.11.17赵

58、亮,张维.基于Android技术的界面设计与研究D.徐州:徐州建筑职业技术学院,200118陈璟,陈平华,李文亮.Android内核分析J.广东工业大学计算机学院实践 与经验,200919韩超.Android经典应用程序开发J.人力资源出版社,2011: 5-18 4吴亚峰,索依娜.Android核心技术与实例讲解.北京:电子工业出版社,201020 刘高原,张国平.基于MVCI式的WEB理系统的实现J.华东交通大学学报.第30页(共46页)致谢致谢大学四年学习生涯,让我有了质的蜕变,专业技能、个人处世能力、人生目标和 信仰加强提高和具体化,但每一次的突破自我成长都是心酸的,因此我要感谢在我成

59、 长过程中支持、关心、帮助过我的人,也要感谢培育我的四川农业大学以及党和国家 对贫困生的支持。首先,感谢我的导师张佳老师,在论文的写作过程中,给予我悉心的指导,屈老师一直以他严谨、一丝不苟的工作态度指导我、鼓励我,让我对论文充 满了信心,帮助我克服一个又一个的技术难题。他深厚的计算机理论基础和他在计算 机新技术方面的造诣,以及不断探索的工作作风给我留下了深刻的印象。此外 ,张老 师还在专业发展,职业规划和人生目标完善等方面都给予我倾力指导和帮助,再次表示衷心的感谢!其次,要感谢我的同学和朋友老师,在我困难的时候,是他们的理解关心和支持让我渡过一次次难关,没有他们的帮助,我不可能读完大学,对我给

60、他们带 来的麻烦表示深深的歉意和真诚的感谢。 最后,也要感谢软库公司的关心和培训,大四 实习,鄢权接受了我这个一无经验,二无相关技能的实习生的加入,还给予了培养,在 公司期间,我详细地了解了公司的运作方式,管理员工办法,公司的完善的制度和“以 人为本”企业精神深深的感染了我,但成立的时间短,使它的信息管理还停留在纸质化 改变这种落后的方式就是本文写作的初衷。谢谢关心、支持和帮助我的同学老师父母和朋友,同时也感谢论文答辩组的老师们,你们辛苦了,祝愿你们身体健康,万事 如意!第31页(共46页)基于Android的电影播放系统附录服务器部分代码:(1) DBManager.javapackage

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论