Android音乐播放器毕业设计范文.docx
- 文档编号:6439205
- 上传时间:2023-01-06
- 格式:DOCX
- 页数:41
- 大小:2.27MB
Android音乐播放器毕业设计范文.docx
《Android音乐播放器毕业设计范文.docx》由会员分享,可在线阅读,更多相关《Android音乐播放器毕业设计范文.docx(41页珍藏版)》请在冰豆网上搜索。
Android音乐播放器毕业设计范文
基于Android平台的音乐播放器
TheDevelopmentofMobileMusicPlayer
BasedonAndroidplatformsystem
学生学号:
学生姓名:
专业班级:
指导教师:
职称:
起止日期:
摘要
当今社会的生活节奏越来越快,随着硬件移动设备的越来越先进,人们对移动设备的要求也越来越高,从以前的追求技术到现在的追求视觉,因此,也逐步的提高了对系统的要求,本文主要是对Android系统上音乐播放器应用程序的设计与实现进行讨论。
本论文的音乐播放器采用了Android开源系统技术,利用Java语言和Eclipse编辑工具对播放器进行编写,同时给出了详细的系统设计过程、部分界面图及主要功能运行流程图,本文还对开发过程中遇到的问题和解决方法进行了详细的讨论,该音乐播放器集播放、暂停、停止、上一首、下一首、音量调节、歌词显示等功能于一体,性能良好,在Android系统中能独立运行。
该播放器还拥有对手机文件浏览器的访问功能、歌曲播放模式、以及歌词开闭状态的友好设置。
关键词:
Android;开源系统;音乐播放器
Abstract
Thepaceoflifeintoday'ssociety,withmoreadvancedhardwaremobiledevicesformobiledevices,peoplemoreandmoreisalsohigh,therequirementsfromthepreviouspursuittopursuethevisualtechnology,therefore,alsograduallyimprovethesystemrequirements,thepapermainlyistotakeonamusicplayerfromsystemdesignandrealizationoftheapplicationisdiscussed.Takethesystemisanopensource,itisbasedontheoperatingsystem,usetheLinuxmusicplayeroftheAndroidopen-sourcesystemtechnology,usingtheJavalanguageandeditingtoolsforplayerstoEclipse.Presentsthedetaileddesignprocess,thepartofthesystemandthemainfunctionsofoperationinterfacediagramofheight,thispaperalsoflowprocessproblemsandsolvingmethodsarediscussedindetail,andthemusicplayerepisode,pause,stopanda,next,volumeadjustment,lyricsdisplayfunctions,suchasperformanceisgood,canoperateindependentlyintheAndroidsystem.Thisplayerhasaccesstothefilebrowserphonefunctions,songsandplayedpattern,openandcloseconditionoffriendlywords.
KeyWords:
Android;opensourcesystem;musicplayer
第1章绪论
1.1选题的目的及意义
Android是谷歌于2007年公布的开放式源代码手机系统,它的开放性就优于其它封闭式的手机系统,因此,任何人都可能根据自己的喜好将手机系统中的所有功能重新编写。
这使得越来越多的人关注这个操作系统。
本次作品音乐播放器就是基于Android平台的。
随着计算机的广泛运用,手机市场的迅速发展,各种音频视频资源也在网上广为流传,这些资源看似平常,但已经渐渐成为人们生活中必不可少的一部分了。
于是各种手机播放器也紧跟着发展起来,但是很多播放器一味追求外观花哨,功能庞大,对用户的手机造成了很多资源浪费,比如CPU,内存等的占用率过高,在用户需要多任务操作时,受到了不小的影响,带来了许多不便,而对于大多数普通用户,许多功能用不上,形同虚设。
针对以上各种弊端,选择了开发多语种的音频视频播放器,将各种性能优化,继承播放器的常用功能,满足一般用户(如听歌,看电影)的需求,除了能播放常见格式的语音视频文件,高级功能:
还能播放RMVB格式的视频文件。
此外,还能支持中文、英文等语言界面。
要研究了各种市场上流行的手机播放器,了解它们各自的插件及编码方式,还有各种播放器播放的特别格式文件,分析各种编码的优缺点以及各种播放器本身存在的缺陷和特点,编写出功能实用,使用方便快捷的播放器。
目前已经实现的功能有能播放常见音频文件的功能,如MP3,WAV等,拥有播放菜单,能选择播放清单,具备一般播放器的功能,如快进,快退,音量调节等。
播放模式也比较完善,有单曲,顺序,循环,随机播放等模式。
1.2本课题涉及内容的研究现状
Android一词的本义指“机器人”,同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。
Android是基于Linux内核的软件平台和操作系统,早期由Google开发(在华注册商标名为“安致”),后由开放手机联盟(OpenHandsetAlliance)开发。
它采用了软件堆层(softwarestack,又名以软件叠层)的架构,主要分为三部分。
低层以Linux内核工作为基础,只提供基本功能;其他的应用软件则由各公司自行开发,以Java作为编写程序的一部分。
另外,为了推广此技术,Google和其它几十个手机公司建立了开放手机联盟。
Android在未公开之前常被传闻为Google电话或gPhone。
大多传闻认为Google开发的是自己的手机电话产品,而不是一套软件平台。
到了2010年1月,Google开始发表自家品牌手机电话的NexusOne。
目前最新SDK版本为Android4.0.3。
1.3本系统要实现的基本目标和研究内容
本文要实现的基本目标和主要研究内容有以下几个方面:
(1)音乐的播放,包括上一首、下一首、暂停、进度条的更新和控制。
(2)本地音乐的管理,自动扫描SD卡的音乐,在列表显示30秒以上的音频文件。
(3)会员特权,包括在线音乐列表、下载列表、背景皮肤的更新。
第2章系统的可行性研究
当今社会的生活节奏越来越快,人们对手机的要求也越来越高,由于手机市场发展迅速,是的手机操作系统也出现了不同各类,现在的市场主要有三个手机操作系统,Windowsmobile,symbian,以及谷歌的Android操作系统,其中占有开发源代码优势的Android系统有最大的发展前景。
那么能否在手机上拥有自己编写的个性音乐播放器呢?
能的,谷歌Android系统就能做到。
本文的音乐播放器就是基于谷歌Android手机平台的播放器。
2.1经济上的可行性
Android 是Google历经数年和投资数亿美元开发出来的智能手机系统,是基于Linux内核的操作系统,是Google公司在2007年11月5日公布的手机操作系统。
随着各大移动终端生产商大力开发和生产基于 Android 的移动智能设备, Android迅速得到业界和社会的认可,并成为整个产业的热点,基于 Android 平台的各类人才逐渐成为各大企业竞相争夺的焦点。
而且 Android 是一个开放的系统,不管是企业还是个人都可以参与来表达自己的创意和想法。
2.2技术上的可行性
Google发起了围绕 Android 的组织——开放手机联盟,其英文全称为“OpenHandsetAlliance”。
它采用了软件堆层(softwarestack,又名以软件叠层)的架构,主要分为三部分。
底层Linux内核只提供基本功能;其他的应用软件则由各公司自行开发,部分程序以Java编写。
2.3操作上的可行性
本系统采用Android框架,可以在eclipse中安装Android开发插件,使用Android模拟器也可以使用任意Android终端。
模拟器和真正的Android手机没有太大区别,人们对手机操作早已熟悉。
综合以上三方面,该系统具有很高的开发可行性,无论是从技术上经济上还是操作上。
故此,可以设计该系统流程图,建立数据字典。
第3章需求分析
软件需求分析工作是软件生存期中重要的一步,也是决定性的一步。
软件需求分析是一个不断认识和逐步细化的过程,该过程将软件计划阶段所确定的软件范围逐步细化到可详细定义的程度。
需求分析还是软件开发的基础,假定在该阶段发现一个错误,解决它需要用一小时的时间,到设计、编程、测试和维护阶段解决,则要花几倍甚至更多的时间。
因此对于复杂系统而言,首先要进行需求分析。
开发人员应该对用户的要求及现实环境进行调查和了解。
3.1软件目标
本系统属于用户常用的音乐播放器。
可以方便用户平时对音乐文件的操作。
本系统应达到以下目标:
(1)软件采用人机交互的方式,界面美观友好,操作灵活、方便、富有个性化。
(2)能够对音乐文件进行有效的管理。
(3)系统应最大限度地实现易维护性和易操作性。
3.2功能需求
功能需求定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足了用户的业务需求。
用户需求文档描述了用户使用产品必须要完成的任务。
针对音乐播放器分别对音乐播放、在线音乐播放及会员特权的换肤等功能进行详细的调研和分析,总结出如下的用户需求信息。
3.3系统界面需求
播放器界面要求布局合理,颜色舒适,控制按钮友好,要求整体有一个主要的元素标准,统一的主题思想。
3.4系统性能需求
根据Android手机系统要求无响应时间为5秒,所以就有如下性能要求:
1)当要求歌曲播放时,程序响应时间最长不能超过5秒
2)当要求歌曲暂停时,程序响应时间最长不能超过5秒
3)当要求歌曲上/下一首时,程序响应时间最长不能超过5秒
第4章系统的总体设计
软件功能设计是使整个软件能基本实现音乐的播放、上一首、下一首、暂停等功能,能让用户通过本软件欣赏音乐。
在线音乐浏览和下载,背景皮肤的切换等功能更好的增强用户体验。
4.1设计思想
(1)将系统分成几个相对独立的模块。
(2)分层的模块化程序设计思想,整个系统采用模块化结构设计。
作为应用程序有较强的可操作性和扩展性。
(3)合理的数据流设计,在应用系统设计中,相对独立的模块间以数据流相互连接,使各模块间的耦合性较低,方便系统运行,提高系统安全性。
4.2系统功能结构图
根据上述需求分析,本Android版音乐播放器可分为一下几个模块:
播放器基本功能如图4-1所示:
图4-1播放器基本功能图
播放清单列表如图4-2所示:
图4-2播放器清单列表图
从图中看出播放列表功能的参与者依然是用户,这表达了客户体验的要求,当用户选中列表中的一首歌时,会有一个列表选项,具备播放、移除功能。
4.3开发语言简介
4.3.1Android简介
Android一词的本义指“机器人”,同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。
Android是基于Linux内核的软件平台和操作系统,早期由Google开发(在华注册商标名为“安致”),后由开放手机联盟(OpenHandsetAlliance)开发。
它采用了软件堆层(softwarestack,又名以软件叠层)的架构,主要分为三部分。
低层以Linux内核工作为基础,只提供基本功能;其他的应用软件则由各公司自行开发,以Java作为编写程序的一部分。
另外,为了推广此技术,Google和其它几十个手机公司建立了开放手机联盟。
Android在未公开之前常被传闻为Google电话或gPhone。
大多传闻认为Google开发的是自己的手机电话产品,而不是一套软件平台。
到了2010年1月,Google开始发表自家品牌手机电话的NexusOne。
目前最新SDK版本为Android4.0.3。
4.3.2AndroidFeatures特性
Android系统有如下的几大特性:
◆应用程序框架支持组件的重用与替换
◆Dalvik虚拟机专门为移动设备做了优化
◆内部集成浏览器该浏览器基于开源的WebKit引擎
◆优化的图形库包括2D和3D图形库,3D图形库基于OpenGLES
◆SQLite用作结构化的数据存储
◆多媒体支持包括常见的音频、视频和静态印象文件格式(如MPEG4、H.264、MP3、AAC、AMR、JPG、PNG、GIF)
◆GSM电话(依赖于硬件)
◆蓝牙Bluetooth,EDGE,3GandWiFi(依赖于硬件)
◆照相机,GPS,指南针,和加速度计(依赖于硬件)
◆丰富的开发环境包括设备模拟器,调试工具,内存及性能分析图表,和Eclipse集成开发环境插件
4.3.3Android基本框架(AndroidArchitecture)
Android平台的基本框架如图1-1所示。
图1-1Android基本框架图
(1)Applications
ApplicationAndroid会同一个核心应用程序包一起发布,该应用程序包包括email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。
所有的应用程序都是用JAVA编写的。
(2)ApplicationFrameWork
开发者完全可以访问核心应用程序所使用的API框架。
该应用程序架构用来简化组件软件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。
该应用程序重用机制使得组建可以被用户替换。
所有的应用程序都由一系列的服务和系统组成,包括:
●可扩展的视图(Views)可以用来建应用程序,包括列表(lists),网格(grids),文本框(textboxes),按钮(buttons),甚至包括一个可嵌入的web浏览器
●内容管理器(ContentProviders)使得应用程序可以访问另一个应用程序的数据(如联系人数据库),或者共享它们自己的数据。
●资源管理器(ResourceManager)提供非代码资源的访问,如本地字符串,图形,和分层文件(layoutfiles)。
●通知管理器(NotificationManager)使得应用程序可以在状态栏中显示客户通知信息。
●活动类管理器(ActivityManager)用来管理应用程序生命周期并提供常用的导航回退功能。
(3)Libraries库
Android包括一个被Android系统中各种不同组件所使用的C/C++库集。
该库通过Android应用程序框架为开发者提供服务。
以下是一些主要的核心库:
系统C库-一个从BSD继承来的标准C系统函数库(libc),专门为基于embeddedlinux的设备定制。
媒体库-基于PacketVideoOpenCORE;该库支持录放,并且可以录制许多流行的音频视频格式,还有静态印像文件包括MPEG4,H.264,MP3,AAC,AMR,JPG,PNG。
SurfaceManager-对显示子系统的管理,并且为多个应用程序提供2D和3D图层的无缝融合。
LibWebCore-一个最新的web浏览器引擎用来支持Android浏览器和一个可嵌入的web视图。
SGL-一个内置的2D图形引擎3Dlibraries-基于OpenGLES1.0APIs实现;该库可以使用硬件3D加速(如果可用)或者使用高度优化的3D软加速。
FreeType-位图(bitmap)和向量(vector)字体显示。
SQLite一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎。
(4)AndroidRuntime
Android包括了一个核心库,该核心库提供了JAVA编程语言核心库的大多数功能。
每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。
Dalvik是针对于同时高效地运行多个VMs来实现的。
Dalvik虚拟机执行.dex的Dalvik可执行文件,该格式文件针对最小内存使用做了优化。
该虚拟机是基于寄存器的,所有的类都经由JAVA汇编器编译,然后通过SDK中的dx工具转化成.dex格式由虚拟机执行。
Dalvik虚拟机依赖于linux的一些功能,比如线程机制和底层内存管理机制。
(5)Linux内核
Android的核心系统服务依赖于Linux2.6内核,如安全性,内存管理,进程管理,网络协议栈和驱动模型。
Linux内核也同时作为硬件和软件堆栈之间的硬件抽象层。
未来发展老牌智能手机软件平台制造商Symbian发言人则表示:
Google的Android只不过是另一个linux,symbian对其它软件与其形成的竞争并不感到担心。
除了北美之外,Symbian在其它地区智能手机市场都占有大部分市场份额。
与iPhone相似,Android采用WebKit浏览器引擎,具备触摸屏、高级图形显示和上网功能,用户能够在手机上查看电子邮件、搜索网址和观看视频节目等,比iPhone等其他手机更强调搜索功能,界面更强大,可以说是一种融入全部Web应用的单一平台。
4.4.4Android系统的四大组件
在Android系统中,为我们提供了四大基本组件,每个组件是一个视图,但是有些是可见的,有些是不可见的视图,像Activity,ContentProvider是可见的视图,Service和BroadcastReceiver是不可见的,它们只在系统的后台运行。
下面分别介绍四大组件:
(1)Activity简介
在Android系统中Activity提供可视化的用户界面,一个Android应用通常由多个Activity组成。
多个Activity组成了Activity栈(Stack),当前活动的Activity处于栈顶。
Activity有自己的生命周期,由Android系统来控制。
(2)Service简介
顾名思义Service就是运行在后台的一种服务程序,一般很少和用户交互,因此没有可视化界面定义一个Service类比较简单,只要继承Service类,实现其生命周期中的方法就可以了。
一个定义好的Service必须在AndroidManifest.xml配置文件注册,通过
(3)BroadcastReceiver简介
BroadcastReceiver顾名思义广播接收器,它和事件处理机制类似,只不过事件处理机制是程序组件级别的(例如,某个按钮的单击事件),而广播事件处理机制是系统级别的。
到目前为止我们可以使用Intent来启动一个程序组件,我们还可以通过使用sendBroadcast()方法来发起一个系统级别的事件广播来传递消息。
我们可以在你的应用程序中实现BroadcastReceiver来监听和响应这些广播的Intent。
(4)ContentProvider简介
ContentProvider用来保存和检索数据,并且使应用程序之间相互访问数据成为可能。
它是跨应用程序共享数据的唯一方法。
Android为常用的数据类型(如:
音视频、图片和联系方式等)提供了大量的ContentProvider。
它们被定义在Android.provider包下面。
通过这样定义好的ContentProvider我们可以方便的进行数据操作。
当然我们必须拥有适当的权限。
我们也可以自己来定ContentProvider共享我们的数据,方便用户的访问。
4.4.5SQLite简介
SQLite,是一款轻量级的关系型数据库。
由于它占用的资源非常少,所以在很多嵌入式设备都是用SQLite来存储数据。
并且它目前支持Windows/Linux/Unix等等主流的操作系统,兼容性还不错。
我们也可以用多种开发语言如C#、Java、PHP等来通过ODBC接口操作SQLite,十分方便。
Android作为目前主流的移动操作系统,完全符合SQLite占用资源少的优势,故在Android平台上,集成了一个嵌入式关系型数据库—SQLite。
如果你想要开发Android应用程序,一定需要在Android上存储数据,使用SQLite数据库是一种非常好的选择。
本数据库支持功能如下:
1.自动建表,支持属性来自继承类:
可根据注解自动完成建表,并且对于继承类中的注解字段也支持自动建表。
2.自动支持增删改,增改支持对象化操作:
增删改是数据库操作的最基本单元,不用重复写这些增删改的代码,并且添加和更新支持类似于hibernate中的对象化操作。
3.查询方式灵活:
支持android框架提供的方式,也支持原生sql方式。
4.查询结果对象化:
对于查询结果可自动包装为实体对象,类似于hibernate框架。
5.查询结果灵活:
查询结果支持对象化,也支持结果为List
4.4搭建Android开发环境
任何事物要运行,都要有它的环境,Android也有它的环境才能够运行,下面介绍Android的开发环境配置。
搭建开发环境需要的软件:
1)操作系统:
windowXP或linux
2)软件包:
AndroidSDK(SoftwareDevelopmentkitJavaDevelopmentkit)、ADT(AndroidDeveloopmentTool)
3)IDE环境:
EclipseIDE+ADTEclipse3.3以上
4)JDK:
JavaRuntimeEnvironment虚拟机、(JDK)JavaDevelopmentkit
安装步骤如下:
第一步:
安装Java虚拟机sun-java6-jdk版本。
第二步:
安装Eclipse3.5工具,到官网http:
//www.eclipse.org/downloads/,选择版本下载后进行安装。
(如图1-2)
Eclipse工具的版本如图1-2所示:
图1-2Eclipse工具的版本图
第三步:
安装AndroidSDK:
首先要下载SDK,可以在这个网址下载Http:
//developer.A,选择相应的系统进行安装
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Android 音乐 播放 毕业设计 范文