基于Android平台的视频点播系统.docx
- 文档编号:7383150
- 上传时间:2023-01-23
- 格式:DOCX
- 页数:11
- 大小:64.02KB
基于Android平台的视频点播系统.docx
《基于Android平台的视频点播系统.docx》由会员分享,可在线阅读,更多相关《基于Android平台的视频点播系统.docx(11页珍藏版)》请在冰豆网上搜索。
基于Android平台的视频点播系统
基于Android平台的视频点播系统
第一章绪论
随着互联网的发展,人们在各个领域发挥着举足轻重的作用。
当然计算机作为生活中的一部分,通过计算机来对视频点播进行管理,这要比以前的观看视频的方法的优点多。
就像:
用户只要有网络就可以学习和查看视频的内容,用户基本上使用的是早期时候人工的方式来记录信息,这种方式虽然简单但是却有着许许多多的缺点,就像:
记录的效率很低、而且时间一长所需要记录的数据就会越来越多,需要很多的物质载体用来记录而且想要精细的查找会很麻烦需要花费很多的时间。
现如今互联网的不断普及以及水平不断的提高,计算机相关的科学技术已经慢慢发展起来了,它所拥有的强大的功能已经完全可以代替之前的人工方式记录信息,极大的提高了我们个人的使用效率,国家、企业甚至医院和学校也是使用着先进的计算机科学技术来管理和记录信息。
所以,开发这样视频点播系统是很有必要的。
1.1课题的背景及意义
在当前互联网发展十分的迅速,全球的信息共享和交互加快了信息的网络化进程,与之同时,在信息扩散的这个大前提下,企业对于员工信息的采集、入档、记录与使用的方式没有跟着时代的步伐一起提高,视频点播管理仍然出现存储的有效性问题。
这种问题是所以会出现有很大部分原因是我们没有对信息进行具体的、系统的、全面的分类,思想依旧止步于传统的方法不能好好的利用现有的工具,另一方面是现有的、可以使用的工具也还是有很多的不足仍然有很多地方需要改进,不能够完全满足我们对于信息处理的需求。
伴随着安卓手机的大面积使用,我们慢慢的在使用安卓手机进行更多的更全面的更完善的丰富我们自己的生活。
这其中当然也包含本文的研究方向——视频点播管理。
国际数据公司IDC表示,到2016年,移动终端系统的市场份额中Android将占有超过全球的82%,而IOS(苹果系统)却仅仅只占有不到15%。
IDC预估今年年末Android市场份额会有小幅度的下降,具体数值为81.2%,IOS市场份额为15.8%,也就是说未来的几年苹果的市场份额依旧是会出现下跌。
IDC还表示,今年Android的出货数量将会接近12亿,并且到了2019年将会超过15亿。
然而,随着安卓手机的增加,苹果手机的出货量也随之有着小幅度的增加。
虽然苹果IOS的出货量增长,但是总的增加量很小远远不及安卓,所以,手机的市场份额依旧是安卓占大头。
因此,本文决定基于安卓平台来开发视频点播管理工具。
1.2国内外研究现状
Android,中文名安卓,是一个用于手机的使用Linux内核的系统,是Google成立的OpenHandsetAlliance(OHA)持续领导和开发,主要是针对使用触摸屏的智能手机的。
早期的时候是由安迪·鲁宾(AndyRubin)领导开发Android的,最早的时候,开发Android的初衷仅仅是为了想要一个可以管理数码相机的系统而已;没曾想数码相机的需求不是很大反而手机的需求反而很大,理所当然,Android就被人改造成可以用来管理手机尤其是智能手机的系统了。
因为前景以及市场效果很好,所以在2005年的时候就被谷歌收购了。
谷歌在收购了Android之后就在2007年的时候联合了软硬件的制造商和移动端的运营商来继续研发和改进Android,随后谷歌就使用免费开源的方式发布了Android的源码了,这样就让手机的制造商可以很简单的让Android安装到手机上了,不久后,Android就又可以安装到像平板电脑等移动终端上了。
没想到因为Android的实用性,才仅仅两年而已,使用的人数就已经很多了,市场的占有率在所有手机系统中独占鳌头,排名第一。
同时,因为“信息社会”这个概念的普及,学校老师、企业员工等等需要处理的信息就理所当然的越来越多了,我们很难用自己喜欢的、有用的、效率好的方式来获得自己想要得到的信息,所以该怎么使用一种符合我们的、简单有效的方法在现如今众多的信息中快速找到我们所需要的就显得格外的重要了。
对于此,国内外早就已经掀起一股研究的热潮了,有了一个新的领域:
视频点播平台,它已经是国内外很多人所关注的焦点了。
1.3系统开发主要内容
就当下而言,还是有很多的人在信息管理中使用“烂笔头”就是纸质,就算是有使用电脑来存储信息也依旧是使用很老旧的、传统的office办公工具,反而是相对于这些工具,比较简单、实用并且专业的视频点播系统管理软件使用的人数还是很少的,任课的人数还是很少的。
本选题的目的是对于视频进行系统化的管理,可以使用标签分类等等方式,随时随地查看最新的信息。
1.4本章小结
本章主要介绍本系统的开发背景还有项目的特点,并且优化了商业安全软件的某些小模块,简单的描述了用户想要让系统实现的功能,最后介绍了要开发这个项目的所用到平台和数据库。
第二章需求分析
2.1可行性分析
2.1.1技术可行性:
技术背景
(1)硬件可行性分析
开发本系统,电脑的硬件没有什么要求,不需要特别好的配置,只是很普通硬件配置就可以了,就是我们所说的标配,不过系统一旦开始运行了一定要能够正常的运行,并且效率要高才可以。
以为一旦有特别差劲的配件就会影响到整个系统的正常运行并且相应的后台网站运行起来也会有卡顿,用户7也会有不好的操作体验。
不过,现在大家广泛使用的电脑普通配置就完全可以胜任了,所以本系统对于硬件来说是可行的。
(2)软件可行性分析
为了让设计更加的集中一般后期的修改,需要一个共同机制类似的借口动态模型。
并且,代码复用可以有很好的体现还有Java可以很容易的存储信息。
因此,使用Android语言作为本系统的开发语言是可行的。
以上分析后可知,本系统具有软件方面的可行性。
综上所述,进行了软硬件两个方面的可行性研究,系统开发是没有问题的。
2.1.2经济可行性
本系统的特点是基于Android平台,采用Eclipse编译器,简单又实用,开发中不需要花费过多的人力、物力、财力,有经济可行性。
2.1.3操作可行性:
因为本系统的最大特点是基于Android平台,所以可以使用安卓手机安装开发的系统就可以操作了,平时生活中有使用过安卓手机的用户都可以进行基本的操作。
本系统有安装简单、操作方便、使用人群广泛等等的她点,所以本系统值得开发。
2.1.4社会因素可行性:
对于中国来说,我们在网络方面已经还在成长期还需要多加努力,所以对于我们就是收益了,有关收益这一方面还是受到了很多人的热烈追捧。
所以,对于像现在正准备开发的这种需要花费很长时间的系统,想要开发它就仅仅需要一个理由,就是它值得开发,仅此而已。
而且开发这个系统的难度并不是很大,直接用Eclipse就可以导出apk了,再把这个apk文件安装到手机或平板电脑等移动终端上就可以了,操作起来十分的简单,而且花的时间不会很多。
这样子可以节省很多时间,最重要的是完全可以保证信息准确不会出现任何错误,很适应目前的发展趋势。
2.2项目设计目标与原则
整个系统的整体架构设计,必须要很清楚的实现使用的用户能够跟整个系统的各个模块的接口产生有效的互动。
只有这样子,数据的扩展性以及安全性才可以在后期完全的是实现。
想要整个系统有一个好的拓展空间的话,就必须首先实现这个目前,这样子才顺应未来的发展趋势。
在整题系统的设计中,需要满足下列要求:
(1)数据安全性
对于某些用户,可能会保存一些有关个人隐私的数据,所以在处理这些问题的时候就显得格外的重要,一定一定要确保所上传数据的安全性,不论这数据是隐私或者不是隐私。
设计后台网站的时候一定要采取安全防范措施,以解决可能产生的安全问题。
(2)易用性
在用户权限的内,相关的流程操作很简单而且其操作的界面很简洁,每个页面风格统一,可以在很大程度上提高用户的使用效率。
(3)扩展性
因为视频点播的功能需求会随着人们的使用慢慢增加,所以,视频点播系统需要可以顺应发展的要求,适时对功能更新和拓展,所以在刚开始设计的时候就要求要有好的拓展性方案。
2.3本章小结
本章主要介绍了需求分析、可行性分析还有需要完成功能以及后期可能需要拓展的说明,为以后界面设计奠定基础。
第三章Android系统开发环境搭建
3.1Android体系结构概述
图3.lAndroid系统架构图
第一层:
Linux操作系统和驱动(Linuxkernel):
系统和确定都是是由C语言实现的。
Linux2.6内核支撑着Android的核心系统服务,其中有:
安全性、进程调配、网络协议、内存管理等等。
硬件和软件栈间的抽象层是Linux的内核,可以实现在Android要用到的C/C++库,Android仅仅只是为了服务开发者。
而为嵌入式Linux的设备专门定制的库是系统的C库。
多媒体库:
基于PackerVideo的OpenCore;对于多种常用的音频、视频格式回放和录制,系统C库也是支持的。
SufaceManager:
是给一个以上的程序提供2D以及3D图层的无缝融合,可以显示子系统的管理器。
Web浏览器引擎中使用的是LibWebCore,当然也是支持Android浏览器,OpenGLESl.0API可以实现3libraries而且可以实现3D加速。
FreeType:
它是位图(bitmap)和矢量(vector)。
Android运行环境(ANDROIDRUNTIME):
由Java类库和DalvikJava虚拟机组成,并且提供Java语言核心库的绝大部分功能。
Android中使用的java虚拟机是Dalvik并且在运行时候每个独立的Dalvik都占有每一个运行的Android程序。
而且Dalvik可以一机多用,即可以同时运行多个虚拟机相当于智能手机的多任务功能。
因为Android所用的虚拟机都是基于寄存器的并且每一个类都是要用Java编译器进行编译的,最后通过SDK把后缀名是“dx”转变成“.dex”,然而对于内存较小的、优化过的文件都是后缀名“.dex”格式的。
第三层:
Android应用框架(ANDROIDFRAMEWORK)
因为本系统是基于Android平台的,所以开发人员可以去访问核心的应用程序的API框架的。
第四层:
Android应用程序(APPLICATIONS)
因为所有的Android程序后台都是由Java支撑的,所以每个开发的Android都是必须要在API中构建的。
3.2系统关键技术
3.2.1Android系统四大核心组件
Activity:
Android系统的核心组件之一。
每一个Android应用会包含一个或者多个的Activity,每一个Activity都是一个可视化的界面,可以让用户来操作的也是用户最直接能接触到的,因此普通用户接触最多的也是Activity。
虽然每个Android程勋里面有很多不同的activity一起工作,然而这些activity都是独立运行,相互之间并没有什么直接的联系,除非程序有特地设置。
我们主要完成的就是每一个activity需要实现什么样的,这也就是应用程序的设计。
每一个安卓的程序在启动后,呈现在用户面前都是一个可操作性的界面即为activity。
通过程序设置的关系,可以在当前出现的activity里打开新的界面也就是activity,每一个activity界面都版含有这一个全新的用户界面窗口。
树结构是一个根节点其后衍生出许许多多的子树,而显示activity就跟树结构一样有严格的层次关系。
不同的是树结构是父亲节点和子树,activity是父视图和子视图,其中父视图还可以管理子视图的布局等。
因此用户的接口与activity是视图。
Service:
Android系统的核心组件之一。
Service的主要运行环境是在后台。
每个使用的service都扩展自类Service。
多媒体播放器播放音乐就是使用service最好的例证。
可能有一个或者多个activity在播放器程序中,而这些activity就是让用户来进行选择,选择完后用来播放音乐的。
但是有时候我们想在播放的时候手机可以看看小说之类,让手机界面不需要一直停在音乐播放器界面,退出了依旧可以继续播放音乐。
这时候就需要一个service了,把activity放入service中,退出音乐播放器的时候不让音乐播放器的activity消亡,让其在后台继续运行。
即使是该activity退出了,Android可以让音乐的service一直运行。
想要让后台结束也行,因为android程序可以跟运行的service进行连接,连接时可以进行通信,这是我们就可以命令这个service是否要停止。
因为为了防止阻塞,service会使用线程来执行任务。
Broadcastreceiver:
Android系统的核心组件之一。
接受并响应广播通知的一类组件时broadcastreceiver。
广播通知可以由系统产生也可由应用程序产生。
多个broadcastreceiver包含在一个应用程序里,是用来响应重要的通知的。
每一个broadcastreceiver都由类BroadcastReceiver扩展的。
broadcastreceiver不是activity没有包含任何用户界面。
但可以启动activity来响应接收到的消息,也可以通过NotificationManager来通知使用者。
通常有消息了就会在程序状态栏上有一个标识,用户就知道有新的消息了,然后可以打开标识所标注的图标查看消息。
Contentprovider:
Android系统的核心组件之一。
Contentprovider是标准的共享数据的机制,可以访问其他的应用程序的数据。
每一个contentprovider都是由ContentProvider类扩展的,可以通过它所实现的接口来控制其他应用程序的数据。
在任何时候系统街道组件处理的请求时都会先判断这个请求是不是被占用了,如果没有就会马上运行,如果有,先确定请求使用的组件能否使用,要是不能,系统会创建一个新的请求来响应当前的这个请求。
3.2.2组件激活与关闭技术
Intent是系统所需要激活的组件。
ContentResolver接收的提供者想要被激活首要的是发出的请求被系统接受才行。
activity、服务以及广播接收器三个组件共同组成了intent的异步消息。
Intent的对象是保存着消息内容的,而activity和服务想要使用intent来请求需要完整的命令存入intent,包括操作的名称,数据甚至是URL等等。
该系统的关闭组件。
想要关闭组件即为不显示所选中的组件,需要向ContentResolver发出请求后,被广播接收器接收后响应了才会被激活。
不过activity是需要需要一直和用户进行交互的。
所以不管服务有没有进行,activity都会一直运行。
3.3系统开发环境和目标平台
3.3.1系统开发环境
(l)Eclipse编程软件
Eclipse编译器是由Java开发的,并且是开发源代码的平台,因为有跨平台性,包含很多的子项目还有Java的JDK,所以它很适合开发者。
(2)AndroidSDK
安卓系统有自己使用的软件开发工具包AndroidSDK。
市面上的安卓手机上安装的基本都是是Android系统,但是性能基本不高却很贵。
当下使用安卓手机的用户越来越多,这样就会映入许多的开发者和商家。
(3)JDK环境
JDK针对Java开发员的产品。
Java运行环境、工具、基础类库三部分组成了Java的核心:
JDK。
所以对于Java来说,JDK是最重要的。
随着技术的不断成熟,JDK的每个版本不断更新,每次更新都会添加新的功能满足每个开发者。
3.3.2系统目标平台
该系统所用的平台是Android4.0或者更高的版本。
3.3.3Android开发环境搭建
(l)JDK安装
设置环境变量步骤如下:
①我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量:
②JAVA_HOME值是你存放JDK的具体地址,即为逻辑地址。
③CLASSPATH值是你的JDK中的一个工具中的lib目录。
④Path值是在JDK中的bin工具目录。
在安装完后,按住“window+R”打开命令输入界面,之后输入java-version来查看是否安装成功。
成功的话,如图3.2所示。
图3.2jdk安装成功
(2)安装Eclipse
本机安装的是Eclipse的Window的64位版本,如图3.3所示:
图3.3安装版本图
(3)AndroidSDK安装
首先需要再任意路径中从AndroidDevelopers下载sdk,并且解压。
①双击运行SDKSetup.exe,选择AvailablePackages。
②在点击“下载安装”前,需要选择自己需要的SDK。
③之后在之前的环境变量中创建AndroidSDK下的tools的路径,然后重启电脑是使命令可以执行。
开机后检验SDK是否安装成功,按住“window+R”打开命令输入界面,输入android–h,如有下面的内容则表示安装成功,如图3.4所示。
图3.4验证SDK安装成功
(4)ADT安装
①打开安装好的Eclipse,选择进入菜单中的"Help"->"InstallNewSoftware"。
②之后点击Add...按钮,之后Location会话框中输入的eclipse的存储目录,点击OK即可。
③找到ADT压缩包的路径并在workwith中输入,然后选中Name下面的内容,点击Next即可。
④继续进行下一步操作直到点击OK就行了。
(5)创建AVD
一般想要检验开发的Android程序是否可以正常运行,需要创建一个AVD,需要通过,模拟器来创建。
①菜单里有Windows选中里面的AndroidSDKandAVDManager。
②接着点击VirtualDevices,再点击New创建一个新的模拟器。
③根据自己的喜好输入模拟器的名字填到Name中,选择API的版本以及SDCard大小任意,剩下的默认值。
④点击CreateAVD即可完成创建AVD。
成功启动虚拟机,如图3.5所示。
图3.5虚拟机成功启动
3.4本章小结
本章对开发项目所必须的开发工具、平台和数据库简单介绍。
另外,对于安卓的四大组件以及它们各自的功能也进行说明了。
最后,说到Android的数据库的运用和该数据库的利弊。
总之,通过这个阶段的学习明白了开发项目要使用的工具、数据库还有必不可少的环境以及平台。
这对于我后面的代码编写打下了一个坚实的基础。
第四章项目设计
4.1项目设计目标及原则
本次项目的目标是完成一个视频点播的软件,并且安装到移动端上,主要是视频点播管理的各页面实现。
特别是首页,是一句用户所输入的账号密码匹配登录。
用户管理模块的实现:
其中包括,用户注册。
用户可以在线进行视频播放,作为一个以实用性强为目的的系统,力争要降低每个模块之间的耦合度,这样子后期在完善系统的时候就不需要大幅度的改动系统的结构了,便于维护。
本项目是一个软件系统,里面包含了很多的模块,每个模块内又有许多要求必须实现的子模块,每一个子模块都是独立的和其他模块无关,这既是模块的独立性。
4.2项目的模块流程图
①主界面业务流程图
一个结构图,里面有主界面,主界面上有意思模块组成了本系统。
在主界面上有用户管理、视频添加管理等模块组成。
总体模块结构图如图4.1所示。
用户管理
视频点播平台系统
视频管理
视频添加
视频播放
安全退出
4.1主业务流程图
手机端视频点播平台给用户提供视频分类、视频检索、个人信息三大模块。
②splash界面的业务流程图
应用程序的初始化、加载配置、检查版本号、联网校验应用程序完整性、显示新创建图标的完整性等等都是splash界面的作用。
如图4.2所示。
图4.2splash界面流程图
③登陆界面的业务流程图
登陆界面有提供注册和登录,通过输入账号和密码可以进行登录。
进行注册的时候会对用户名进行检测,如果是相同的话就会提示重名需要重新输入。
如图4.3所示。
图4.3登陆界面流程图
4.3本章小结
本章主要说明了系统总体的设计以及设计的原则还有需要完成的目标等等。
透过需求分析,使系统功能更清楚。
为了让开发人员更加了解每个模块的具体功能以及效用,该章还说明每个模块间的流程逻辑,让开发人员有完整的设计思路。
总的来说,本章节对于每一个功能模块都有进行详细的设计以及说明,让今后总体的代码设计编辑了不少,奠定了基础。
第五章项目详细设计与展示
5.1功能模块设计
项目的功能模块有3个,总体上可分为三个方向的功能,注册登录、视频播放,每一个大方向都有包含着很多小模块,每个模块所要完成的功能各不相同,接下来就对每个模块进行展示以及功能进行解释。
视频点播管理平台主界面的设计
进入到主界面需要用户输入账号密码进行匹配,匹配完全正确后才能登录成功,如图5.1所示。
进入自己的界面后,可以进行查察媒体播放列表,用户可以挑选视频播放。
如图5.2所示。
图5.2媒体列表主界面图
用户根据媒体播放列表,根据自己需求,可以点击播放,对视频进行在线查看,如图5.3所。
图5.3视频播放界面图
视频点播系统后台设计:
用户登录,通过登录窗口,进行填写用户名和密码,填写准确后进行登录,如图5.4所示。
图5.4用户登录界面图
要是用户没有账户就需要进行注册,填写用户名以及密码后点击注册,在这里会对所输入的用户名进行检测,如果所输入的用户名和后台匹配显示已经存在了就会提示用户名已存在,需要重新输入。
如图5.5所示。
图5.5用户注册界面图
登录成功后,可以进行系统管理和视频管理两个模块的修改维护操作,系统管理主要是对用户进行管理,通过列表查用户信息,用户名、电话、创建时间、更新时间等信息,根据需求进行增删改等操作,如图5.6所示。
图5.6用户管理界面图
视频管理,通过列表查看视频的名称、类型和大小等信息,根据需求进行在线播放、上传、下载等操作,视频上传,通过选择本地视频信息,选择视频文件进行在线上传,如图5.7所示。
图5.7视频管理界面图
5.2项目设计遇到问题的处理式
在开发软件系统过程中肯定会出现问题,其中主要有语法问题和逻辑问题。
对于语法问题很轻易解决,只需要对相应的错误语法的地方进行修改就可以了,但是相对于逻辑问题来说就比语法问题来得难处理得多了不仅需要调试,还要让用户使用完后,用户的体验反馈才可以进行处理。
需首要处理的问题有,像Web开发,数据库连接,分页的设置等等。
移动端需首要的问题有,像数显页面的设计、数据和服务器的通信、数据在移动端的存放和处理等等。
一般来说使用打断点的方法是在Android编程中遇到问题最经常处理的方式,只要是你自己所想要实现的效果跟系统运行起来的效果不一样就是遇到了bug,这时候就需要使用打断点的方法了。
用DebugA来运行整个程序,程序就不会像正常运行一样了,会跳转到Debug的页面,选中变量然后点击下一步,接着查看每一步中变量储存的值。
就这样子,不停地进行调试,直到找到bug的所在为止。
5.3本章小结
本章主要介绍了三个大方向下的每个下模块的设计,该系统主要实现用户登录、注册、视频播放的流程信息,通过该系统,用户能直接在线播放视频,管理员能添加新的视频内容,查看用户的视频上传信息,管理员进行审核等功能。
总体的设计,不论是功能逻辑设计还是界面的设计都和正规的商业性的界面有很大的差距,但是所要求的需要实现的都基本上实现了,现在只是需要对每个界面进行美化,让界面显得更好看,使用户使用起来更加的舒服。
结论
这次的毕设最困难就是Android的相关知识没有掌
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Android 平台 视频点播 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)