登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 毕业论文 > 理工学类 > 自动化 > 正文

面向安卓平台的媒体播放器的实现毕业论文

 2020-02-18 11:55:30  

摘 要

近年来随着移动智能设备的不断迭代,智能手机已经成为人们日常生活中重要的一部分,它所集成的各种功能为用户提供了极大的便利。而媒体播放器作为移动设备中的重要功能之一,为用户提供的播放音乐、视频的功能。目前应用市场上用户使用的安卓媒体播放器多种多样,但或多或少还存在一些弊端,因此,在安卓平台上,一款界面友好、操作方便、简洁实用的媒体播放器对用户非常重要,本文将以此为目的设计实现这样一个应用。

本文首先介绍了研究背景,媒体播放器的国内外开发经验及Android系统的基本构成,从而引出本文研究的主要目的——实现一款小巧简洁的媒体播放器app。其次是本次研究实现的播放器的总体分析与设计,即功能需求分析、界面功能设计等,接着重点讲解了播放器各个模块的具体实现,最后是总体的测试与分析。本次研究基于Android系统开发,最终完成的播放器实现了预期的主要功能,即播放列表、播放历史,常用格式视频的播放以及播放界面方便快捷的控制操作,常用格式音频的播放等。

关键词:播放器;媒体;安卓,视频,音频

Abstract

In recent years, with the continuous iteration of Mobile Smart devices, smart phones have become an important part of people's daily life. The various functions it integrates provide users with great convenience. As one of the important functions of mobile devices, media player provides users with the function of playing music and video. At present, there are many kinds of Android media players used by users in the application market, but there are still some drawbacks more or less. Therefore, on Android platform, a concise and practical media player with friendly interface and easy operation is very important to users. This paper will design and implement such an application for this purpose.

Firstly, this paper introduces the research background, the development experience of media player at home and abroad and the basic structure of Android system, which leads to the main purpose of this study - to achieve a compact and concise media player app. Secondly, it is the overall analysis and design of the player, that is, functional requirements analysis, interface design and function design, etc. Then it focuses on the specific implementation of each module of the player. Finally, it is the overall test and analysis. This research is based on Android system, and the final player achieves the expected main functions, such as playlist, playback history, playback of commonly used format video and convenient control operation of playback interface, playback of commonly used format audio, etc.

Key words: Media Player;Media;Android;Video;Audio

目录

第1章 绪论 1

1.1研究的背景及意义 1

1.2国内外的发展现状 1

1.3本文研究主要的内容 4

第2章 Android系统介绍 6

2.1引言 6

2.2 Android系统架构 6

2.3 Android组件 7

2.3.1四大组件及其关系 7

2.3.2组件详解 7

2.4 Android常用存储 10

2.4.1文件存储 10

2.4.2 SQLite 10

第3章 播放器的总体分析与设计 12

3.1功能需求分析 12

3.2多媒体解决方案 12

3.2.1 Android自带的SDK 12

3.2.2 Vitamio 13

3.2.3 FFmpeg 13

3.2.4方案选择 13

3.3界面和功能设计 14

3.3.1 视频列表界面 14

3.3.2 视频播放界面 15

3.3.3 音频界面 17

第4章 播放器各个模块的实现 19

4.1 视频播放界面 19

4.1.1 基本播放模块 19

4.1.2 进度刷新模块 21

4.1.3 控制条显示/隐藏模块 22

4.1.4 手势监听模块 23

4.2 视频列表界面 26

4.2.1 列表基本实现 26

4.2.2 适配器模块 27

4.3 音频界面 28

4.4 图片加载模块 30

4.5 数据处理模块 33

4.5.1 基本处理逻辑 33

4.5.1 数据同步 35

4.5.2 数据获取 37

第5章 播放器的总体测试与分析 38

5.1 测试环境 38

5.2 功能测试 38

5.2 卡顿测试与优化 41

第6章 总结 44

参考文献 45

致 谢 46

绪论

1.1研究的背景及意义

随着移动网络技术的飞速发展和移动智能设备的不断迭代,如今移动设备,尤其是智能手机,已经成为许多人日常生活、学习、工作中极其重要的一部分,它所集成的各种功能为用户提供了极大的便利。而媒体播放器作为移动设备中的重要功能之一,为用户提供的播放音乐、视频的功能是在目前生活节奏越来越快的社会中最好的舒缓压力的方式之一。

移动平台设备之所以如此流行是在于其智能化,具体表现在其操作系统,不像早期的时候,系统中仅有一些固定的功能简单的应用,如今的用户可以在系统中随意地下载安装各类应用,除了电话、短信、拍照、网页浏览等最基本的功能外,由于可以自行安装应用,因此可以说能提供的功能数不胜数。移动平台的操作系统存在过很多,如Android、IOS、Windows Mobile、Symbian、BlackBerry等,但随着时间的推移,Android 凭借其开源性、不断优化升级的功能及友好的用户界面得到了非常广泛的应用,是目前占比最高的移动操作系统。

目前应用市场上安卓平台用户所使用的播放器多种多样,但或多或少还存在一些弊端,例如UI界面不够简洁美观,又或者过于繁杂不清晰,运行时的占用内存比较大、播放时各种操作控制不够简便,广告过多等,这些情况多少会对用户体验造成影响。因此,针对以上的各种情况,只要实现播放器的常用功能后再进行一些优化,便可满足普通用户播放音乐和视频的需求。

同时目前移动设备的在迭代过程中,正逐渐向全面屏的方向发展,设备的屏占比越来越高,“正面全是屏”已不再是梦想,这样的大屏幕、高屏占比的显示方式为媒体播放(尤其是视频播放)带来了相当大的优势。因此,综上所述,在安卓平台上,一款界面友好、操作方便、简洁实用的媒体播放器对用户已经非常重要。

1.2国内外的发展现状

目前应用市场上国内外出色的安卓媒体播放器有很多,为具体了解它们的功能特性,以便为本文的播放器设计提供参考,本次研究选取了以下几个使用率比较高的播放器进行了具体的使用体验:

(1)MX Player

(2)VLC

(3)VPlayer

(4)MoboPlayer

(5)全能视频播放器

(6)万能电影播放器

(7)万能视频播放器

(8)完美视频播放器

体验过程中发现选取的几个播放器有优有劣,下面对其中几个比较具有代表性的进行分析介绍:

1.MoboPlayer

官方介绍:由济南三叶草信息技术有限公司开发的MoboPlayer,可以播放多种视频格式,还可以由核心解码器顺利播放各种高清视频。它支持多音频流多字幕选择,实现了视频播放列表,自动记住视频的播放进度等功能[1]

E:\f_大学专业课\f_大四上学期\毕业设计\图片草稿\Screenshot_2019-05-22-17-58-54-282_com.clov4r.and.pngE:\f_大学专业课\f_大四上学期\毕业设计\图片草稿\Screenshot_2019-05-22-18-03-03-546_com.clov4r.and.png

图 1.1 MoboPlayer

实际使用体验:所体验的MoboPlayer版本为3.1.150,其界面如图 1.1所示,比较简洁,列表、设置等功能齐全,视频播放界面功能较为丰富,支持滑动调节音量亮度且操作方便。

2.VPlayer

官方介绍:VPlayer由炫一下(北京)科技有限公司开发,是一款运行在安卓系统上的视频播放器,支持Divx/Xvid、flv、rmvb、avi、mkv、wmv、mp4等多种视频格式。VPlayer界面干净简洁,具有很多实用的功能,它使用了硬件视频解码器,具备流畅的播放处理能力[2]

E:\f_大学专业课\f_大四上学期\毕业设计\图片草稿\Screenshot_2019-05-22-18-03-31-128_me.abitno.vpla.pngE:\f_大学专业课\f_大四上学期\毕业设计\图片草稿\Screenshot_2019-05-22-18-04-24-757_me.abitno.vpla.png

图 1.2 VPlayer

实际使用体验:所体验的VPlayer版本为3.2.6,效果如图 1.2所示,列表、设置等功能比较齐全,界面虽然简洁但是有点单调,并且播放界面有明显Bug和卡顿,音量亮度调节等操作不方便,综合体验较差。

3.MX Player

MX Player(又名MX播放器)由韩国的J2 Interactive公司开发。在此次对数个播放器的使用与分析中,MX Player是其中表现最出色,且功能最齐全的一款。

官方介绍:MX Player是安卓平台上一款优秀的媒体播放器,它不仅支持目前所有的视频格式,而且支持了多种字幕格式和几乎所有音频格式。MX Player还具有强力的硬件加速功能,支持多核解码。此外它还具备外挂字幕、选择音轨、手动调整视频的尺寸比例等许多方便的功能[3]

E:\f_大学专业课\f_大四上学期\毕业设计\图片草稿\Screenshot_2019-05-22-18-05-30-074_com.mxtech.vid.pngE:\f_大学专业课\f_大四上学期\毕业设计\图片草稿\Screenshot_2019-05-22-18-05-50-411_com.mxtech.vid.png

图 1.3 MX Player

实际使用体验:如图 1.3所示,界面简洁美观,列表、设置等各种功能十分丰富齐全,视频播放界面音量亮度调节等各种操作十分简便,不愧是目前Android平台上最优秀的本地媒体播放器。

1.3本文研究主要的内容

结合上面讨论的研究背景和发展现状,可以确定本文的研究目的——实现一款小巧、简洁、实用的安卓本地媒体播放器app,因此本文研究的主要内容有:

  1. 介绍研究背景,以及国内外的发展现状即媒体播放器在国内外的开发经验。
  2. Android系统的简介,即其基本架构,几大组件,及常用的存储方式。
  3. 播放器的总体分析与设计,即功能需求分析,然后参考1.2节的几个播放器的效果和功能特性进行具体的界面功能设计等。
  4. 播放器的视频播放、视频列表、音频播放、图片加载、数据处理等各个模块的具体实现。
  5. 总体的测试与分析,进行功能测试、卡顿测试与优化等。

Android系统简介

本文的研究目标是实现Android平台的媒体播放器,因此下面对Android系统进行介绍。

2.1引言

Android是一种基于Linux的开放源代码的操作系统,由谷歌公司和开放手机联盟及开发[4] 。Android系统在设计之初主要支持手机,但今年来随着它的不断优化和升级,现在最新的版本更新到了Android 9.0,各项功能特性已经发展得非常成熟。并且凭借着其开源特性,不少国内厂商基于Android开发了自己的一套系统,如小米的MIUI、华为的EMUI、魅族的flyme等,这大大增加了Android的使用率。因此使得Android成为了目前使用占比最高的移动端操作系统,不仅仅是智能手机,在平板电脑、电视播放器和其他设备上均有广泛的应用。

2.2 Android系统架构

E:\2345Downloads\Android系统架构图.jpg

图 2.1 Android系统架构

如图 2.1所示,Android系统采用了分层的架构,总共有四层,从高层到低层分别是应用程序层、应用程序框架层、系统运行层和Linux内核层[5] 。其中应用程序层(Application)就是Android开发者们开发完成后打包发布的应用,它不仅包括Android中的系统应用,如电话、联系人、短信、浏览器、日历等,还包括了用户可以自己安装的形形色色、各种功能的应用。而应用程序框架层(Application Framework)是Android系统所提供的开发者可以调用的各种API框架,一般情况下开发者就是在这一层中调用框架内封装好的各种组件进行开发的。系统运行层则相对比较底层,它包括两部分:系统库、Android运行时,一般情况下开发者不需要在此层进行开发工作,仅需要有一定的了解。最底层的是Linux内核层,主要是为各种硬件提供驱动程序。

2.3 Android组件

2.3.1四大组件及其关系

Android中包含有以下四大组件:

(1)Activity,用户操作的可视化界面,它为用户提供了一个完成操作指令的窗口,主要用于和用户进行交互[6]

(2)Service,一个实现后台程序操作的解决方案,是为了执行一些不需要与用户交互而且需要一个长期运行的任务而产生的。

(3)Content Provider,即内容提供器,主要用于在不同应用之间实现数据共享的功能。

(4)Broadcast Receiver,主要用于接收应用或者系统所发出的各类广播信息,并做出相应处理[7]

这四大组件的功能特性与使用场景各不相同,但它们之间也经常进行协同工作,保持着紧密的联系。Activity是进行人机交互的第一界面,主要负责处理结果和在界面显示各种信息。这些信息可以是从资源管理器(Resource Manager)获取,也可通过Content Provider进行跨应用信息的获取,或者通过Service在后台下载获取,还可以通过Broadcast Reciever接收到的广播中获取[8] 。此外,Android系统还提供了一个比较特殊的组件Intent,此组件可用于在四大组件之间进行通信,传递各类数据。正是通过上面的方式,四大组件之间形成了相对独立而又紧密联系的关系。

2.3.2组件详解

由于本次开发的媒体播放器需要使用到的组件有Activity和Content Provider,下面进行详细介绍。

1.Activity

(1)Activity是用户操作的可视化界面,也是Android四大组件中最为重要的组件,它为用户提供了一个窗口来完成各种操作[9]

(2)一般来说,在应用中弹出的一个宽高占满屏幕的窗口或界面通常就是一个Activity。

(3)Android开发过程中每一个Activity都必须要在配置文件中声明,否则系统将会报错。

(4)Activity的生命周期

一个Activity运行过程中的生命周期如图 2.2所示,其实质上有四种状态:

a.运行中(Running):当启动Activity或者返回到该当Activity时(从生命周期的角度来说是执行完onResume方法后),进入此状态,这时Activity可见,并且可交互。

以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。

相关图片展示:

E:\2345Downloads\Activity的生命周期图.png

E:\f_大学专业课\f_大四上学期\毕业设计\图片草稿\视频列表界面250.png

E:\f_大学专业课\f_大四上学期\毕业设计\图片草稿\视频播放界面.png

E:\f_大学专业课\f_大四上学期\毕业设计\图片草稿\音频界面.png

E:\f_大学专业课\f_大四上学期\毕业设计\图片草稿\视频播放界面01.png

E:\f_大学专业课\f_大四上学期\毕业设计\图片草稿\视频列表界面01_250.png

E:\f_大学专业课\f_大四上学期\毕业设计\图片草稿\视频列表界面02_250.png

您需要先支付 80元 才能查看全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图