android的视频播放器的设计与实现(附件)
目录
引言
1 绪论
1.1 课题背景、目的及意义
1.1.1 课题背景
作为一种极其重要的即时通讯工具,智能手机的功能变得越来越强大,相对于互联网、电视等方式,智能手机凭着它可以方便、随时随地处理信息的优越性已经慢慢成为了人们获取信息的重要工具。
近些年来因为Android平台极好的方便性和开放性的特点,Android的智能手机越发地受到人们的推崇和青睐,Android平台也在智能终端手机领域里扮演着极其重要的角色。考虑到Android平台美好的市场发展前景,本文将选择Android平台作为课题的研究设计对象,旨在阐述如何基于Android平台设计一款多功能的视频播放器,及其实现的具体过程。
1.1.2 目的及意义
作为娱乐和通讯一体的智能手机,播放视频是它必不可少的功能,而一个实用的视频播放器也是人们所想要的。现今,对于所有的Android智能手机用户而言都会有系统自带的视频播放功能。但是,它的界面单调,功能也较为简单,没法满足人们多样化的使用需求。例如它只能播放3GP、MP4格式的视频,这也是Android平台原生所支持的视频格式,而其他很多的包括RMVB、MKV式在内的视频是不能播放的。所以说这样的视频播放功能已经满足不了人们的需求了。加上现今无线网的盛行,手机上网成为常态,如果一款视频播放器不能播放网络视频,那就会被淘汰了。而怎样实现网络视频的播放,这个新功能也一定会获得人们的青睐。所以设计一款好的视频播放器它的前景是非常可观的。
本文主要研究内容如下:
1.对Android系统的视频播放器做出需求分析。
2.实现基本播放控制功能 *景先生毕设|www.jxszl.com +Q: ^351916072^
、支持手势滑动控制音量和屏幕亮度功能,加载本地视频文件、语音搜索以及获取网上视频播放功能、历史播放功能、万能播放器功能等。
3.实现一些新的功能。比如用户观看某些付费视频时弹出二维码以及视频推荐功能。
4.对软件进行测试,最后开发出一个Android平台的多功能视频播放器。
1.2 国内外研究现状
目前,人们对于Android系统中视频播放器的研究重点放在了Java应用层[1],而针对一些本地框架和硬件抽象层等底层及它们整体结构的研究少之又少。另外对于安卓平台的视频播放相关技术研究也挺少,而基于Android视频播放器又有着美好的市场前景。因此,针对Android平台上视频播放系统的研究在国内外都得到了高度的重视,成为各国科学家研究的热点。
1.2.1 国内研究现状
国内市场上有多款较为成熟的Android平台视频播放器,如MoboPlayer、Rockplayer和暴风影音等[2]。
MoboPlayer是济南四叶草信息技术有限公司研发制作的,它能够播放近乎所有的视频格式,还能够通过高度优化的核心解码器在移动端流畅播放各种高清视频。它还能实现多音频流多字幕选择的功能,支持视频播放列表,单视频文件的记忆播放功能,为用户带来良好的体验[3]。RockPlayer是上海的某一公司研发制作,RockPlayer作为一款高效能的视频播放器,能够播放近乎全部的视频格式,它拥有极其个性化的UI界面布局和设计,它的优点有低碳和双播放核心还可以和它云端的服务相互 配合,用户之间也可以相互分享视频。
1.2.2 国外研究现状
当然国外市场上也有一些较为成熟的Android平台视频播放器。比如,Zimly作为一款国外的视频播放软件,它是Android平台上另一款全世界公认的最好用的视频播放器。Zimly内嵌多数主流视频文件解码包,解码能力强大;而且功能较强,操作起来简单,拥有多彩美观的用户界面。现在它还是韩国最多人在使用的多媒体播放器,能够同时播放音乐和视频,能够让用户绑定微博账号,同时一键分享他的音乐视频到微博,为用户带来良好的使用体验。
2 开发平台及相关技术
2.1 开发平台
软件开发是在Eclipse、ADT、SDK、JDK、MySQL、Tomcat平台下开发的。其中客户端开发仅需要用到Eclipse、ADT、SDK、JDK。
2.2 软件相关技术理论
2.2.1 Android开发框架
Android是谷歌推出来的开放式的操作系统。它大致能分成4层架构[4]:Linux 内核层,主要为Android设备的硬件提供底层的驱动;系统运行库层,它通过C或者C++库为安卓系统提供了一些核心库以及主要的特性支持;应用框架层,它提供开发者开发应用程序时可能会用到的API,开发人员通过查阅API相关文档就可以开发应用程序了[5];应用层,所有运行安装在手机上的应用都属于这一层的。
我们在Google的官方网站上下载我们需要的工具SDK(software development kit),就能够方便地研发Android平台的应用[6]。在安卓开发中,最重要最核心的便是我们的四大组件[7]Activity(活动,主要是界面)、Service(服务,主要是后台)、Content Provider(内容提供者,主要实现资源共享)和 Broadcast Receiver(广播接收器,主要负责广播接收和消息传输)。
2.2.2 Activity
Activity是Android系统的一个核心类[8],同时也是Android系统中一个拥有生命周期的对象。每一个活动Activity都是Android系统官方提供的Activity的子类,并实现一些独有的功能。当一个Activity出现,之前的那个Activity会被停止并放入堆栈中,若人们按下返回键则前一个Activity有可以再现[9]。当一个活动完全不可见并不再被软件需要时就会被销毁同时从堆栈中移除。
原文链接:http://www.jxszl.com/jsj/wljs/56524.html