已阅读5页,还剩43页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
太原理工大学毕业设计(论文)用纸太原理工大学毕业设计(论文)任务书 第1页毕业设计(论文)题目:基于android的视频播放器的设计与实现全套设计加扣 3012250582毕业设计(论文)要求及原始数据(资料):1综述android系统上视频播放器的现状;2深入了解视频播放器及其插件的相关技术;3熟练掌握视频播放器的应用与分析,训练编写应用程序的能力;4设计并实现视频播放器中对于播放某一视频的插件;5深入分析设计视频播放器的关键技术与编写语言;6训练检索文献资料和利用文献资料的能力;7训练撰写技术文档与学位论文的能力。毕业设计(论文)主要内容:1综述视频播放器在android系统中的应用;2了解视频播放器的相关技术;3熟悉实现视频播放器需要的开发环境; 4设计视频播放器中播放指定视频的方法;5. 深入分析基于android视频播放器的关键技术与设计流程;6熟练掌握基于android的视频播放器的程序编写;7设计与实现播放指定视频的程序。学生应交出的设计文件(论文):1内容完整、层次清晰、叙述流畅、排版规范的毕业设计论文;2包括毕业设计论文、源程序等内容在内的毕业设计电子文档及其它相关材料。第2页第3页主要参考文献(资料):1 曹博. 基于Android平台的视频播放器的设计与实现D. 黑龙江大学, 2013.2 马建设, 赵雪江, 苏萍,等. 基于 Android系统的视频播放器开发J. 计算机应用与软件, 2013(11):136-137. 3 陈增锋. 基于Android系统的视频播放器开发J.信息系统工程, 2015(03):23-24.4 孟跃, 马国伏. Android平台的视频播放器发展现状J. 数字化用户, 2014.5 尹京花,王华军.基于Android开发的数据存储J.数字通信,2012,39(6):79-81. 6 许金. 基于Android的流媒体播放器研究与设计D. 广东工业大学, 2012.7 李德平. 基于Android的移动多媒体播放器软件的设计与实现J. 河北软件职业技术学院学报, 2014, 16(1):52-56.8 Hwang K T, Hwang K T. Video Player for Online SVC Stream in Android PlatformJ. Journal of the Institute of Webcasting Internet & Telecommunication, 2012, 12(1):157-164.9 Si Z J, Yuan F, Zhao Y G. Design of Android-Based YUV Video PlayerJ. Applied Mechanics & Materials, 2015, 731:248-252.10 Ma J, Zhao X, Su P, et al. DEVELOPMENT OF ANDROID-BASED VIDEO PLAYERJ. Computer Applications & Software, 2013.专业班级软件1227班学生要求设计(论文)工作起止日期2016年3月21日2016年6月24日指导教师签字日期2016年3月21日教研室主任审查签字日期系主任批准签字日期基于Android的视频播放器的设计与实现摘 要随着智能手机的快速普及,智能手机操作系统市场风生水起。智能手机已经渐渐的可以随时查询互联网所提供的服务,应用程序应运而生,将应用系统的功能拓展到手机终端上,让用户可以通过手机来访问移动网络以及互联网访问相关资源信息。因此,智能手机应用软件及其需要的服务将有广阔的发展前景。本课题为其设计一个基于Android视频播放器,该视频播放器为在线播放视频,功能较为简单,就是播放在服务器端数据库中所存储的视频,在观看过程中可以对视频进行评论和收藏,丰富用户娱乐生活,提高生活情趣。本论文首先介绍系统的开发背景和意义,接着详细介绍系统设计以及实现的过程,最后介绍了系统测试和本软件的测试用例以及总结了本次毕业设计整个过程。关键词: Android;智能系统;播放器;手机软件The Design and Implementation of Video Player Based on AndroidAbstract With the rapid popularization of intelligent mobile phone, intelligent mobile phone operating system market fast. Smart phone has been gradually can at any time of the query provided by the Internet service, application arises at the historic moment, function of application system will be extended to mobile phone terminal, so that the user can through the mobile phone to access the mobile network and Internet access to relevant information resources. Therefore, the smart phone application software and its services will have broad prospects for development.This topic to design a based on Android video player, the video player for online video playback, function is relatively simple, is playing video stored in the server database, watch video comments and collection can be in the process, rich user entertainment music life and improve the taste of life.This paper first introduced system development background and significance, and then details the system design and the realization of the process, at last, the paper introduces the test system and the software of test cases and summarizes the graduation design in the whole process.Keywords: Android; intelligent systems; player; mobile phone software 太原理工大学毕业设计(论文)用纸目 录1 绪 论11.1课题研究背景和意义11.2课题可行性分析31.3论文框架安排42 开发语言说明52.1开发工具及环境简介52.2 Android系统62.2.1 Android Features特性62.2.2 Android系统的四大组件73 视频播放器总体结构分析103.1概述103.1.1系统分析的原则103.1.2系统分析的方法103.2系统需求分析113.3系统功能模块114 视频播放器详细设计134.1系统设计原则134.2系统设计目标144.3系统总体结构设计144.4服务端数据库设计155系统实现与测试175.1 搭建Android开发环境175.2系统实现205.2.1 视频模块实现205.2.2 视频详情查看模块225.2.3 登录模块实现265.2.4 视频播放模块295.2.5 服务端模块模块315.3 系统测试335.3.1 软件测试335.3.2 测试用例345.3.3 测试总结366 总 结37参考文献38致 谢39外文原文40中文翻译461 绪 论1.1课题研究背景和意义在互联网越来越发达的今天,智能手机也随着潮流爆发式增长,老式的手机已经退出历史舞台,大部分人在选择手机时会选择更为方便的智能手机。现在主要有三个使用率最高,关注度最高的手机平台,分别是:Android,ios和windows phone平台,这三个平台中Android的占有率最高,但是设备种类非常复杂,碎片化严重。虽说苹果的真机调试比较复杂,但是苹果一共需要适配的机型也就两种尺寸,3.5和4.0英寸并且iOS的版本升级率远远大于安卓,所以在适配上,iOS的优势就明显了。库克在发布会上也拿系统升级率向安卓开火,安卓在这块确实没做好。但是这也导致了其设备种类不多,无法满足所有用户的缺点。在应用的提交上,iOS的提交虽然极其麻烦,但是只要搞定一次就可以一劳永逸,而安卓则不同,由于其开放而混乱的超级生态,导致我们提交上的种种麻烦。对于不是很热的windows phone,我们这里不做讨论。Android平台1. 谷歌与开放手机联盟合作开发了Android, 这个联盟由包括中国移动、摩托罗拉、高通、宏达和T-Mobile在内的30多家技术和无线应用的领军企业组成。2. Android是一个真正意义上的开放性移动设备综合平台。通过与运营商、设备制造商、开发商和其他有关各方结成深层次的合作伙伴关系,来建立标准化、开放式的移动电话软件平台,在移动产业内形成一个开放式的生态系统,这样应用之间的通用性和互联性将在最大程度上得到保持。3. 所有的Android应用之间是完全平等的。4. 所有的应用都运行在一个核心的引擎上面,这个核心引擎其实就是一个虚拟机,它提供了一系列用于应用和硬件资源间进行通讯的API。撇开这个核心引擎,Android的所有其他的东西都是“应用”。5. Android打破了应用之间的界限,比如开发人员可以把Web上的数据与本地的联系人,日历,位置信息结合起来,为用户创造全新的用户体验。Android平台是一个面向大众的系统,分布在低端,中端和高端市场中,在各个阶段的是市场中都有很受欢迎的机型,并且Android是开源的,开发者随时都可以查看系统源代码,并且使用时下最流行的java作为其主要的开发语言。由于这些特点,使得Android成为现在市场占有量最大的软件平台,在这样的平台上面开发一款独特的日常生活软件尤为必要的。 Android是一种以Linux与JAVA为基础的开放源代码操作系统,主要使用于便携设备。中国大陆地区较多人使用“安卓”。Android操作系统最初由Andy Rubin开发,被谷歌收购后则由Google公司和开放手机联盟领导及开发,主要支持手机与平板。Android 是运行于 Linux kernel之上,但并不是GNU/Linux。因为在一般GNU/Linux 里支持的功能,Android 大都没有支持,包括Cairo、X11、Alsa、FFmpeg、GTK、Pango及Glibc等都被移除掉了。Android 的 HAL(硬件抽像层)是能以封闭源码形式提供硬件驱动模块。HAL 的目的是为了把 Android framework 与 Linux kernel 隔开,让 Android 不至过度依赖 Linux kernel,以达成 kernel independent 的概念,也让 Android framework 的开发能在不考量驱动程序实现的前提下进行发展。操作系统与应用程序的沟通桥梁,应用分为两层:函数层(Library)和虚拟机(Virtual Machine)。Bionic是 Android 改良libc的版本。Android 同时包含了Webkit,所谓的Webkit 就是Apple Safari浏览器背后的引擎。Surface flinger 是就2D或3D的内容显示到屏幕上。Android使用工具链(Toolchain)为Google自制的Bionic Libc。Android本身是一个权限分立的操作系统。在这类操作系统中,每个应用都以唯一的一个系统识别身份运行(Linux用户ID与群组ID)。系统的各部分也分别使用各自独立的识别方式。Linux就是这样将应用与应用,应用与系统隔离开。Java技术包含了一个编程语言及一个平台。Java编程语言具有很多特性,如面向对象、跨平台、分布式、多线程、解释性等等。Java编程语言起源于Sun公司的一个叫“Green”的项目,目的是开发嵌入式家用电器的分布式系统,使电气更加智能化。1996年1月发布了JDK1.1版本,一门新语言自此走向世界。之后,1998年12月发布了1.2版本,2002年2月发布1.4版本,2004年10月发布1.5版本(5.0),2006年12月发布1.6(6.0)版本,这是目前的最新版本。Java1.2版本是一个重要的版本,基于该版本,Sun将Java技术分为J2SE、J2ME、J2EE,其中J2SE为创建和运行Java程序提供了最基本的环境,J2ME与J2EE建立在J2SE的基础上,J2ME为嵌入式应用(如运行在手机里的Java程序)提供开发与运行环境,J2EE为分布式的企业应用提供开发与运行环境。1.2课题可行性分析可行性研究的目的,就是用最小的代价在尽可能短的时间内确定问题是否能够解决。系统的可行性分析主要包括经济上的可行性,技术上的可行性,操作上的可行性和法律上的可行性。经济可行性目标系统开发经济需求的比较低,加上具有成熟的Android平台以及十分普及手机设备,所以在软硬件的支出上十分有限。而且,目标系统并是十分的复杂,开发的周期较短,人员经济支出有限。当系统开发成后,通过测试和、试运行和实际应用后,将很大程度上提高手机管理软件系统的科学性和高效性,在为人们带来便利的同时,也为系统的进一步推广、创新创造了条件,这带来的经济回报将远超过支出,并且最重要的一点是通过该系统的开发,可以使我们进一步理解软件工程思想和软件开发流程,为从事软件开发工作打下很好的基础,从长远利益来考虑,本课题的设计开发还是具有相当大的经济可行性的。技术可行性本系统使用Android技术进行开发,发展到现在,Android已经算是一个较成熟的平台了,现在有越来越多的企业及技术人员选择它作为开发平台。因此,在技术上是完全可以胜任这个平台的开发。Android开发平台是由谷歌与开放手机联盟合作开发的一个开放、自由的移动终端平台,它由操作系统、中间件、应用软件三部分组成。该平台备有完善的程序开发环境,包括模拟器、除错工具、程序执行所耗用存储器、性能评介等功能。操作可行性本系统用户只要有一台Android手机,就可以使用了,系统是由的操作都是用户熟悉的选择框或者按钮等等。所有的操作通过手机就可以完成,用户不需培训,只要稍微提示一下即可。因此,在操作使用上,本系统简单、方便,易于使用户接受,因而是十分可行的。法律可行性由于本系统是在相关法律法规下实施完成的,所以不存在任何法律问题,在法律上是完全可行的。综合考虑经济、技术、操作和法律等方面的因素,该手机软件管理系统可以立即开始进行。1.3论文框架安排本文详细介绍了基于Android视频播放器的设计实现全过程。从开始到程序设计的实现,将在一下的几章中予以介绍:第1章 绪论,这一章主要是对本次毕业设计所开发的系统进行问题的定义,通过问题的定义明白需要做些什么,并且对开发内容简单的介绍了一下;同时本章还对课题的研究背景与研究意义进行分析,对开发本系统的可行性分析还有对论文各章内容的简要介绍。第2章 开发语言说明,对涉及到的理论知识和用到的开发工具做相关阐述。第3章 视频播放器系统结构分析,主要分析了本系统开发的可行性还有需求分析等等。第4章 视频播放器详细设计,主要介绍了本系统的整个设计过程、设计思路以及设计中应该注意的问题。第5章 系统实现与测试,主要是介绍了本设计的实现环境和实现,同时也介绍了测试在软件开发环节中的重要性和给出本系统的测试过程与结论。第6章 总结与展望,总结了近两三个月的做毕业设计过程中的一些心得和体会,最后做了展望。最后:致谢、参考文献。42 开发语言说明2.1开发工具及环境简介a. Eclipse Classic 3.7.2Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Kit,JDK)。 Eclipse是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如C+和Python的开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。许多软件开发商以Eclipse为框架开发自己的IDE。Eclipse 最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。IBM提供了最初的Eclipse代码基础,包括Platform、JDT 和PDE。目前由IBM牵头,围绕着Eclipse项目已经发展成为了一个庞大的Eclipse联盟,有150多家软件公司参与到Eclipse项目中,其中包括Borland、Rational Software、Red Hat及Sybase等。Eclipse是一个开发源码项目,它其实是 Visual Age for Java的替代品,其界面跟先前的Visual Age for Java差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。近期还有包括Oracle在内的许多大公司也纷纷加入了该项目,并宣称Eclipse将来能成为可进行任何语言开发的IDE集大成者,使用者只需下载各种语言的插件即可。b. MYSQLMySQL 是一个关系型数据库,由瑞典MySQLAB公司开发,目前于Oracle旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS应用软件之一。MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中而不是将所有数据放在一个大仓库内,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统。这样就增加了速度并提高了灵活性。MySQL自有它的不足之处,如规模小、功能有限等,但对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。c. ADT目前Android开发所用的开发工具是Eclipse,在Eclipse编译IDE环境中,安装ADT,为Android开发提供开发工具的升级或者变更,简单理解为在Eclipse下开发工具的升级下载工具。d. Android SDKSDK:(software development kit)软件开发工具包。被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。因此,Android SDK 指的既是Android专属的软件开发工具包。 2.2 Android系统Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。Android操作系统最初由Andy Rubin开发,主要支持手机。2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授=权方式,发布了Android的源代码。第一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机等。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。 2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%。2013年09月24日谷歌开发的操作系统Android在迎来了5岁生日,全世界采用这款系统的设备数量已经达到10亿台。准确地说应该是一个提供智能手机运行的平台,主要由操作系统、中间件、用户界面和应用程序组成 。2.2.1 Android Features特性 Android系统有如下的几大特性 应用程序框架 支持组件的重用与替换 Dalvik虚拟机 专门为移动设备做了优化因为Dalvik虚拟机的存在,Android系统的开发者只需使用谷歌提供的SDK(软件开发工具包)即可较为轻松的按照一套“规则”创建APP,不用顾忌硬件、驱动等问题,在每次执行应用的时候Dalvik虚拟机都会将程序的语言由高级语言编译为机器语言,这样当前设备才能够运行这一应用。 内部集成浏览器 该浏览器基于开源的WebKit引擎 优化的图形库 包括2D和3D图形库3D图形库基于OpenGL ES MySQL 用作结构化的数据存储 MySQL特点:同时访问数据库的用户数量不受限制;以保存超过50,000,000条记录;是目前市场上现有产品中运行速度最快的数据库系统;用户权限设置简单、有效。 多媒体支持 包括常见的音频、视频和静态印象文件格式如MPEG4, MP3, AAC, AMR, JPG, PNG GSM电话依赖于硬件 蓝牙Bluetooth, EDGE, 3G, and WiFi 依赖于硬件 照相机GPS指南针和加速度计依赖于硬件 丰富的开发环境 包括设备模拟器、调试工具、内存及性能分析图表;2.2.2 Android系统的四大组件 在Android系统中最为重要的就是为我们提供了四大基本组件,有的组件拥有用户界面是可见的,有的组件是不可见的。像Activity ContentProvider是可见的视图Service和BroadcastReceiver是不可见的。它们只在系统的后台运行。下面分别介绍四大组件 1、Activity 简介 在Android系统中Activity提供可视化的用户界面,一个Android应用通常由多个Activity组成。Activity需要在AndroidManifest.xml配置文件注册,可以直接新建一个Activity,这样可以直接建立Java源代码、Layout界面已经直接注册活动的Activity处于栈顶。Activity拥有属于自己生命周期,可以由由Android系统来控制。 2、Service 简介 Service就是运行在后台的一种服务程序,没有用户界面,无法和用户进行直接的交互,所以一般很少和用户交互。因此定义一个Service类比较简单,只要继承Service类,实现其生命周期中的方法就可以了。一个定义好的Service必须在AndroidManifest.xml配置文件注册通过元素声明才能使用.Service有自己的生命周期我们可以调用startService()启动一个Service或者bindService()方法来绑定一个存在的Service 3、Broadcast Receiver 简介 Broadcast Receiver 是广播接收器,之前在按钮上添加的监听器只是程序级别的监听器由于BroadcastReceiver是一种全局的监听器,因此它可以非常方便地实现系统中不同组件之间的通信。例如某个按钮的单击事件而广播事件处理机制是系统级别的。到目前为止我们可以使用Intent来启动一个程序组件,我们还可以通过使用sendBroadcast()方法来发起一个系统级别的事件广播来传递消息。我们可以在你的应用程序中实现Broadcast Receiver来监听和响应这些广播的Intent ;4、ContentProvider简介 Content Provider 用来保存和检索数据并且使应用程序之间相互访问数据成为可能。它是跨应用程序共享数据的唯一方法。 Android 为常用的数据类型如音视频、图片和联系方式等提供了大量的Content Provider。它们被定义在vider包下面。通过这样定义好ContentProvider 我们可以方便的进行数据操作。当然我们必须拥有适当的权限。我们也可以自己来定ContentProvider共享我们的数据方便用户的访问。Android程序下的文件夹:src:毫无疑问,src 目录是放置我们所有 Java 代码的地方,它在这里的含义和普通 Java 项目下的 src 目录是完全一样的,展开之后你将看到我们刚才创建的 HelloWorldActivity 文件就在里面。gen:这个目录里的内容都是自动生成的,主要有一个 R.java 文件,你在项目中添加的任 何资源都会在其中生成一个相应的资源 id。这个文件永远不要手动去修改它。assets:这个目录用得不多,主要可以存放一些随程序打包的文件,在你的程序运行时可以动态读取到这些文件的内容。另外,如果你的程序中使用到了 WebView 加载本地网页的功能,所有网页相关的文件也都存放在这个目录下。bin:这个目录你也不需要过多关注,它主要包含了一些在编译时自动产生的文件。其中会有一个你当前项目编译好的安装包,展开 bin 目录你会看到 HelloWorld.apk,把这个 文件拷到手机上就可以直接安装了。libs:如果你的项目中使用到了第三方 Jar 包,就需要把这些 Jar 包都放在 libs 目录下,放 在这个目录下的 Jar 包都会被自动添加到构建路径里去。 res:这个目录下的内容就有点多了,简单点说,就是你在项目中使用到的所有图片、布局、字符串等资源都要存放在这个目录下,前面提到的 R.java 中的内容也是根据这个目 录下的文件自动生成的。当然这个目录下还有很多的子目录,图片放在 drawable 目录下, 布局放在 layout 目录下,字符串放在 values 目录下,所以你不用担心会把整个res目录弄得乱糟糟的。AndroidManifest.xml:整个 Android 项目的配置文件,你在程序中定义的所有四大组件都需要在这个文件里注册。另外还可以在这个文件中给应用程序添加权限声明,也可以重新指定你创建项目时指定的程序最低兼容版本和目标版本。由于这个文件以后会经常用到,我们用到的时候再做详细说明。perties:这个文件非常地简单,就是通过一行代码指定了编译程序时所使用的 SDK 版本。3 视频播放器总体结构分析本章首先介绍了基于Android视频播放器的可行性,确立了开发基础,直接详细阐述了系统各个模块的详细需求分析,接着分析了系统的研究路线和系统的流程设计,最后对系统的运作流程做了分析。3.1概述系统分析是在 总体规划的指导下,对某个或若干个子系统进行深入仔细地调查研究,确定新系统逻辑功能的过程。这一阶段的主要任务是由系统分析员了解每个业务流程,工作流程,广大用户的需求,运用系统开发理论、开发方法和开发技术设计出一个智能化的软件系统。3.1.1系统分析的原则在系统分析中存在很多困难,为了克服困难,做好分析工作,在进行系统分析时应遵循系统分析的原则,这样才能保证分析工作能够顺利进行,系统分析的原则有:1.逻辑设计与物理设计分开的原则2.面向用户的原则3.结构化分析的原则通过实际调查并与相关用户交流后,分析基于Android视频播放器的具体的要求,确定本系统的逻辑功能,以满足用户的各项要求,完成相应的各项功能,提高网站的实用水平。在近期目标完成后,该系统应该有很强的扩充性,便于在此基础上进行扩充式开发,为以后的发展及扩充打好基础。 3.1.2系统分析的方法该系统采用以抽象和分解为手段,并且采用结构化分析方法进行系统分析,根据实际调查研究,对系统进行自顶向下的逐层分解,逐步细分,逐步求精,建立新系统的逻辑模型,这个逻辑模型将尽可能避免使用计算机术语,让其尽可能的简单化、通俗化,便于设计者和浏览者的沟通与交流经验。结构化分析方法的基本思想是该系统采用结构化分析方法,以抽象和分解为手段,对系统进行自顶向下的逐层分解,逐步细分,逐步求精,从而达到易于理解的目的。3.2系统需求分析客户端功能需求分析:1、视频模块:模块细分为视频简介、视频播放、提问、回复和收藏转发2、视频播放模式:本系统视频播放为在线播放,可以边下载边播放;3、登录注册模块:用户在评论之前需要通过登录,系统提供用户注册功能;4、评论模块:用户可以查看所有视频的评论信息,可以对视频发表自己的评论信息;服务端功能分析:1、视频管理模块:管理员可以在后台上传、发布视频,可以修改视频信息,也可以删除现有视频2、用户管理模块:管理员可以管理已经在客户端注册的用户信息,可以删除用户信息;3、登录模块:管理员使用后台前需要通过登录验证3.3系统功能模块在系统分析和开发系统过程中,采用了一些相对比较成熟、安全性较高、运行比较稳定的技术。这些技术贯穿了整个系统的设计与开发过程,是设计和实现各个模块的基础技术,只有运用先进的设计模式和开发技术,才能保证开发工作顺利地进行,才能保证系统设计的合理性和灵活性,才能保证各个功能模块的稳定性。系统分为视频列表、视频详细信息、登录注册、视频播放等几个模块视频列表界面显示了当前数据库的当中的所有视频。并且可以通过模糊搜索来查询相关的视频文件。视频播放为最核心的模块,播放时手机屏幕会进入横屏状态,在播放时可以通过下方进度条来调整进度。信息视频详细信息界面是当前视频的详细信息、评论信息和相关专辑信息。界面的下方有显示评论。可以查看关于该视频的评论。登录界面,查看评论时不需要登录,但如果要评论视频则需要先登录,相应也会有注册界面。系统功能模块图如图3.3.1所示:图3.3.1 功能模块图4 视频播放器详细设计4.1系统设计原则系统设计是确定系统如何建立的过程。良好的软件系统来源于良好的系统设计。系统设计应该提供完整、准确、规范的系统设计文档。在系统设计中,首先应该注意的是设计的统一和准确。设计统一即将系统视为一个有机整体,要求设计具有统一的设计规范和标准。设计准确即设计描述应该力求避免模糊或二义性。此外,在进行系统设计过程中,还应该遵循的主要原则如下。1、适用性原则系统总是为了能够适合使用而设计的,保证系统功能的实现,即满足客户的需求,在软件的设计过程中是重中之重。在满足系统需求的前提下,应该从系统用户需求的情况下,使系统的设计操作简单、易用,使用户可以更加方便渐变的操作程序。并且以降低系统的成本为目标,避免一味追求技术上的先进而不考察应用效益。没有市场和应用前景的软件项目开发是失败的。2、可靠性安全性原则可靠性和安全性是系统重要的需求之一,也是系统设计质量的重要指标。视频播放器工作在网络环境中,对于现在大量存在于网络的病毒、黑客攻击等安全威胁,应该具有一定的防御能力,对于网络带宽和访问量等外界运行环境的变化,应该具有较强的适应能力。只有安全可靠的系统才能发挥其应有的功能。3、可扩展性原则系统的设计应该提供可扩展能力,以满足未来外语系工作需求的发展和变化。使项目之间达到高内聚、低耦合,方便在后期添加功能或者模块。不用每次升级或者添加功能都将所有的代码全部打开进行编译。把系统设计为多个功能相对独立的模块,降低系统的耦合度,提高系统的可扩展性。希望通过Android技术和服务端Servlet的互相配合,设计出一个基于Android视频播放器,设计过程中希望能够从多方面进行考虑,如程序运行的效率、逻辑的严密、系统的稳定以及用户界面的方便等方面进行综合考虑,力求最后产品界面能够一目了然,让用户容易上手并且不容易出错。4.2系统设计目标目标是在系统分析的基础上,设计出能满足预定目标的系统。系统设计内容主要包括:确定设计方针和方法,将系统分解为若干子系统,确定各子系统的目标、功能及其相互关系,决定对子系统的管理体制和控制方式,对各子系统进行技术设计和评价,对全系统进行技术设计和评价等。本系统是设计目标是建立一个基于Android视频播放器,可以满足用户对视频的查询和在线播放等功能。用户界面友好、操作简单,每一步骤的操作都经过精心的设计,将复杂的统计运算过程隐藏于简单的操作之下,系统的设计能降低使用前的培训、实施和使用中的维护时间。通过合理而先进的软硬件设备和网络设计,足可保证系统的可靠性与容错性,达到最终目的。系统以用户需求为目标,以方便用户为原则,处处为使用者着想。 4.3系统总体结构设计在设计一款软件时一般都会把它分成几个模块,在模块的基础上还会再分小模块,这样就达到了软件模块化设计的要求,然后再对各个小模块进行详细设计和编写,采用模块化的管理方式可以使软件结构更清晰,也使得软件的管理更有秩序,使别人容易理解和阅读,但是这些模块也要根据别的模块来设计和约束,不能随便设计脱离框架,设计完成后需要把每个设计完成的模块根据总体框架结合起来。整个程序分为客户端和服务端两部分,客户端基于Android系统,服务端采用Servlet提供服务,后台使用MySQL数据库。在整个系统中,客户端负责采集数据和显示的工作,对于客户的输入,输入端会将信息发送至服务端的Servlet上,Servlet接收信息之后,会对数据库进行相关的操作,并将结果发送回客户端,客户端再进行处理,从中得到结果。4.4服务端数据库设计本系统需要一个服务端来为客户端提供数据接口服务,服务端采用MySQL数据库来存放数据, MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。本系统共用到5个数据库表,每个表的详细设计结构:表4-1 管理员表序号列名数据类型小数位主键允许空默认值说明1idint是否auto_increment2loginidvarchar是账号3passwordsvarchar是密码表4-2 收藏表序号列名数据类型小数位主键允许空默认值说明1idint是否auto_increment2useridint是3videoidint是视频ID4createtimevarchar是表4-3 评论表序号列名数据类型小数位主键允许空默认值说明1idint是否auto_increment2videoidint是视频ID3useridint是用户ID4usernametext是用户名称续表4-3 评论表序号列名数据类型小数位主键允许空默认值说明5createtimevarchar是评论时间6bodytext是评论内容7org_bodytext是回复内容表4-4 用户表序号列名数据类型小数位主键允许空默认值说明1idint是否auto_increment2loginidvarchar是3nametext是4passwordsvarchar是表4-5 视频表序号列名数据类型小数位主键允许空默认值说明1idint是否auto_increment2titletext是视频标题3introtext是视频介绍4createtimevarchar是5useridint是用户ID6usernametext是用户名称7urlvarchar是视频名称8img_urlvarchar是图片名称5系统实现与测试5.1 搭建Android开发环境任何事物要运行,都要有它的环境,Android也有它的环境才能够运行,下面介绍Android的开发环境配置。搭建开发环境需要的软件:1) 操作系统:window XP或linux2) 软件包:Android SDK(Software Development kit Java Development kit) 、ADT(Android Develoopment Tool)3) IDE环境:Eclipse IDE+ADT Eclipse3.3以上4) JDK:Java Runtime Environment虚拟机 、(JDK)Java Development kit DK是Java语言的原创者推出的原始开发环境。采用JDK开发Java程序能够很快理解程序中各部分代码之间的关系,有利于理解Java面向对象的设计思想。在Windows上安装JDK非常简单,访问Oracle官方网站下载页面,网址为/technetwork/indexes/downloads/index.html,也可从其他网站下载。下载完成后,双击运行JDK安装程序并根据提示设定环境变量。安装步骤如下:第一步:安装Java虚拟机sun-java6-jdk版本。第二步:安装Eclipse3.5工具,到官网/downloads/,选择版本下载后进行安装。Eclipse工具的版本如图5.1.1所示:图5.1.1 Eclipse工具的版本图第三步:安装Android SDK:首先要下载SDK,可以在这个网址下载Http:/developer.A/sdk ,选择相应的系统进行安装。sdk下载的地址图如图5.1.2所示:图5.1.2sdk下载的地址图下载好SDK包后,将zip文件解压缩至合适的地方。在下文中,默认SDK安装目录为$SDK_ROOT 。u Linux下,打开文件/.bash_profile或者/.bashrc,找到设定PATH环境变量的一行,将$SDK_ROOT/tools的完整路径加入其中。如果没有找到设定PATH变量的行,可以自己添加一行: export PATH=$PATH:u Mac下,在home目录中找到文件.bash_profile,和Linux的一样处理。如果还没有在机器上设定这个文件,可以创建一个.bash_profile文件。u Windows下,右键点击【我的电脑】,选择【属性】,在【高级】页中,点击【环境变量】按键,在弹出的对话框中双击“系统变量”中的变量“Path”,将$SDK/tools的完全路径加入其中。通过将$SDK/tools加入系统路径,在运行adb和其它一些命令行工具时就不需要键入完全路径名了。需要注意到是,当升级了SDK后,如果安装路径有变动的话,不要忘记了更新PATH变量的设置,将其指向变动后的路径。配置SDK有两种方法:第一种,通过SDK下载器自动下载和配置。适合网络好,下载速度快的情况;第二种,借助工具下载SDK文件,手工配置。适合网络不是很好,下载速度慢的情况下。第四步:安装Android ADT插件。Android为Eclipse定制了一个插件,即Android Develpoment Tools(ADT),目的是为用户提供一个强大的综合环境用于开发Android应用程序。ADT扩展了Eclipse的功能,可以让用户快速建立Android项目,创建应用程序界面,在基于Android框架API的基础上添加组件,以及用SDK工具集调试应用程序,甚至导出签名(或
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 浙江省丽水2026届高二上数学期末监测试题含解析
- 内蒙古集宁第一中学2025年高一上数学期末预测试题含解析
- 第二章 函数全章复习(高效培优讲义)数学北师大版2019必修第一册解析版
- 基于持续改善的应用研究
- 导师对硕士学位论文学术评语(标准版)
- 浅谈资产减值的会计处理
- 武汉大学本科生毕业设计字体格式要求
- 汉语言文学毕业论文格式要求以及写作方法
- 新疆大学本科毕业论文(设计)格式要求
- 220kV同塔双回线电流不平衡分析及改善措施研究
- 2025年交投集团招聘笔试参考题库含答案解析
- 花木兰中英对照演讲故事
- 创业思维与现代企业的核心竞争力
- 《光伏发电组件工艺》课件
- 【MOOC】新媒体设计之图形图像处理-福建师范大学 中国大学慕课MOOC答案
- 黄工为什么走?案例分析
- 血脂管理指导
- 《卧式拉力试验机》
- (完整版)医学英语(阅读一分册)翻译及答案
- 心电图危急值的识别与处理
- 舞蹈疗法行业商业机会挖掘与战略布局策略研究报告
评论
0/150
提交评论