软件工程毕业设计-基于android的音乐播放器的设计与实现.doc
《软件工程毕业设计-基于android的音乐播放器的设计与实现.doc》由会员分享,可在线阅读,更多相关《软件工程毕业设计-基于android的音乐播放器的设计与实现.doc(35页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、河北农业大学本科毕业论文题 目: 基于Android的音乐播放器的设计与实现 摘 要当今社会的生活节奏越来越快,随着移动硬件设备越来越先进,人们对移动设备的要求也越来越高,从以前的追求技术到现在的追求视觉效果,因此,也逐步提高了对系统的要求。本文主要是对Android系统上一的款音乐播放器应用程序的设计与实现进行讨论。Android平台是Google公司推出的一个手机平台,它是一个开源的系统,它底层是基于Linux的操作系统,本论文以Android开发平台为基础,首先介绍了安卓平台的发展以及当前国内外的发展现状。然后对安卓技术做了一个详细介绍,之后对基于Android平台的音乐播放器做了一个详
2、细的需求分析,在需求分析后详细论述了音乐播放器的详细设计。根据Android开发平台自身的结构特点,把音乐播放器的开发分为两个部分来进行分析和设计,一部分是窗口的设计,住要是定义窗口的属性和关联窗口的处理函数;另一部分是功能的实现,主要是结合Android平台提供的资源和对音乐播放器的功能分析最终实现定义的功能。关键词:安卓;开源系统;音乐播放器AbstractThe pace of life todays society ,with more advanced hardware mobile devices for mobile devices ,people more and more i
3、s also high ,the requirements from the previous pursuit to pursuit the visual technology,therefore,also gradually improve the system requirements ,the paper mainly is to take on music player from system design and realization of the application is discussed. Android platform is Googles latest launch
4、 of mobile platform ,the system is an open source ,it is based on Linux systems using the Linux kernel .This article takes the Android development ,as well as the current domestic and foreign development present situation .After the discussion of rational above ,this article introduces the main tech
5、nology of Android ,makes a detailed demand analysis to Music player ,then this article gives a detailed software design of Music player .Based on the Android developing platforms feature .I divide the Music players development into two parts to analyze and design .One part is the window design ,main
6、ly defines the window attribute and the connected window processing function ;Another part is function realization ,mainly unifies the resources which Android platform provides and function analysis to Music player to accomplish the function which we defined. Keywords: Android; Open source system; m
7、usic player目 录1 绪论11.1 项目目的及意义11.2 对国内外现状的研究11.3 论文组织结构22 安卓工程技术介绍32.1 android介绍32.1.1 Android Features特性32.1.2 Android基本框架32.2 安卓应用程序开发的核心技术52.2.1 Android应用程序开发语言52.2.2 Android应用程序组件53 系统需求分析73.1 软件目标73.2 软件可行性研究73.2.1 经济上的可行性73.2.2 技术上的可行性73.2.3 操作上的可行性73.3 功能需求73.3.1 用例图及用例描述83.3.2 音乐播放器的时序图93.3.
8、3 音乐播放器的流程图103.4 软件规格说明103.5 运行环境114 系统设计124.1 界面设计124.2 功能设计124.2.1 音乐列表设计124.2.2 音乐播放设计134.2.3 音乐播放模式设计144.2.4 歌词设计145 系统实现155.1 音乐播放列表155.1.1 音乐列表界面155.1.2 获取手机中歌曲文件信息155.1.3 在列表显示界面中显示音乐165.2 音乐播放和播放的service实现185.2.1 音乐播放界面185.2.2 实现service后台音乐播放195.3 音乐播放模式设置235.3.1 播放模式设置界面235.3.2 进行播放模式选择245.
9、4 歌词处理和显示255.4.1 歌词显示模块255.4.2 歌词解析模块266 总结29参考文献30致 谢311 绪论1.1 项目目的及意义现今生活节凑快,生活紧张,在日常休息之余,欣赏音乐是最好的舒缓压力的方式之一。本项目的目的就是开发一个可以对主流音乐文件格式有很好的支持的音乐播放器。随着计算机的广泛运用,手机市场的迅速发展,各种音频视频资源也在网上广为流传,这些资源看似平常,但已经渐渐成为人们生活中必不可少的一部分了。于是各种手机播放器也紧跟着发展起来,但是很多播放器一味追求外观花哨,功能庞大,对用户的手机造成了很多资源浪费,比如CPU,内存等的占用率过高,在用户需要多任务操作时,受到
10、了不小的影响,带来了许多不便,而对于大多数普通用户,许多功能用不上,形同虚设。针对以上各种弊端,编写一个简洁,占用资源少,并能够很好播放本地音乐的播放器势在必行。研究各种市场上流行的手机播放器,了解它们各自的插件及编码方式,分析各种编码的优缺点以及各种播放器本身存在的缺陷和特点,编写出功能实用,使用方便快捷的播放器。目前已经实现播放音乐文件的功能。拥有播放菜单,能选择播放清单,具备一般播放器的功能。播放模式也比较完善,有单曲,顺序,循环,随机播放等模式,给用户一种轻松的体验。1.2 对国内外现状的研究目前手机的音乐播放功能已经是大家比较关注的一个部分了,不少人在购买手机的时候都会关心手机的音乐
11、播放的能力,这也足以看出目前大家对音乐播放功能的重视,所以一款性能良好的手机音乐播放器软件一定会受到欢迎。和传统的音乐播放器相比,手机播放音乐更加的容易携带,其他方面也都不输于传统音乐播放器所。一款专业的音乐播放软件是手机中必不可少的要素,几乎市场上所有的手机都拥有一个自带的音乐播放软件,通过软件可以对音乐欣赏中一些必要的元素进行人性化的设置,同时在操作的时候也能得到一定的便利,但是不能满足用户的所有要求,所以就出现了各种各样的手机音乐播放软件,来满足不同用户的不同要求。不同手机平台的手机,所支持的音乐播放软件也是各不相同,而现在最流行的手机平台就是Google的android手机平台。随着科
12、技的快速发展,数码电子设备基本上都含有MP3播放的功能。媒体播放器的发展有两个趋势。首先,支持多样化格式,如常见的音频格式WMA格式、MP3格式、MIDI格式等。这些格式如何能够完美的播放,是现如今研究的一个主流方向。其次一个必要的趋势就是播放器的可扩展性,现如今音乐播放器的功能越来越多,用户体验越来越好,如何能让播放器的功能比现有的更加完备,也是占领用户群的一个因素。由于Android基于Linux内核并且具有开源、免费的特性,为播放性能的提升提供了更加便利的条件。Android平台的开放性,可以不仅推动了技术创新(包括平台本身),也有利于降低开发成本,制造商定制具有特点的产品也很容易。因此
13、,它有一个大的市场潜力。Android平台是完全开放的平台,智能手机里的各种应用软件也越来越完备,在Android平台设计和开发一款音乐播放器可以摆脱不够智能音乐播放器的因素,并且具有很广阔的前景。1.3 论文组织结构本文主要研究内容有以下几个方面:第一章 绪论。主要是对项目的背景和意义进行简要描述。第二章 安卓工程及技术介绍。对安卓及安卓技术相关等方面进行介绍。第三章 需求分析。对整个系统的可行性,功能需求和运行环境做出描述。第四章 系统设计。对系统界面设计和功能设计做出描述。第五章 系统实现。对系统的实现国能做出描述,包括界面和代码实现等。第六章 总结。简要介绍程序的功能,自己的收获和一些
14、不足。2 安卓工程技术介绍2.1 android介绍Android是基于Linux内核的软件平台和操作系统,早期由Google开发(在华注册商标名为“安致”),后由开放手机联盟(Open Handset Alliance)开发。它采用了软件堆层(software stack,又名以软件叠层)的架构,主要分为三部分。低层以Linux内核工作为基础,只提供基本功能,其他的应用软件则由各公司自行开发,以Java作为编写程序的一部分。另外,为了推广此技术,Google和其他几十个手机公司建立开发手机联盟。Android在未公开之前常被传闻为Google电话或gPhone。大多传闻认为Google开发的
15、是自己的手机电话产品,而不是一套软件平台。到了2010年1月,Google开始发表自家品牌手机电话的Nexus One,截止到现在最新的手机型号为Nexus 5。2.1.1 Android Features特性安卓系统有如下几大特性:1.应用程序框架 支持组建的重用与替换。2.Dalvik 虚拟机 专门为移动设备做了优化。3.内部集成浏览器 该浏览器基于开源的WebKit引擎。4.优化的图形库 包括2D和3D图形库,3D图形库基于OpenGl ES。5.SQLite 用作结构化的数据存储。6.多媒体支持 包括常见的音频、视频和静态印象文件格式(如MPEG4,H.264,MP3,AAC,AMR,
16、JPG,PNG,GIF)。7.GSM电话 (依赖于硬件)。8.蓝牙Bluetooth,EDGE,3G,安定WIFI(依赖于硬件)。9.照相机,GPS,指南针,和加速度计(依赖于硬件)。10.丰富的开发环境 包括设备模拟器,调试工具,内存及性能分析图表,和Eclipse集成开发环境插件。2.1.2 Android基本框架Android基本框架如图2.1所示。图2.1 安卓基本框架其软件层次结构自上而下分为以下几个层次:(1)应用程序(application)Application Android会同一核心应用程序包一起发布,该应用程序包包括email客户端,SMS短消息程序,日历,地图,浏览器,
17、联系人管理程序等。所有的应用程序都是用JAVA编写的。(2)应用程序框架(application framework)开发者完全可以访问核心应用程序所使用的API框架。该应用程序架构用来简化组件软件的重用;任何一个应用程序都可以发布它的功能块并且任何其他的应用程序都可以使用其所发布的功能块(不过的遵循框架的安全性限制)。该应用程序重用机制使得组件可以被用户替换。所有的应用程序都由一系列的服务和系统组成,包括:a.可扩展的视图(Views)可以用来建应用程序,包括列表(Lists),网格(grids),文本框,按钮,甚至可以嵌入一个web浏览器。b.内容管理器(Content Providers
18、)使得应用程序可以访问另一个应用程序的数据,或者共享自己的数据。c.资源管理器(Resource Manager)提供非代码资源的访问,如本地字符串,图形,和分层文件(Layout Files)。d.通知管理器(Notification Manager)使得应用程序可以在状态栏中显示客户通知信息。e.活动类管理器(Activity Manager)用来管理应用程序的生命周期并提供常见的导航回退功能。(3)各种库和安卓运行环境Android包括一个被Android系统中各种不同组件所使用的C/C+库集。该库通过Android应用程序框架为开发者提供服务。Android包括了一个核心库,该核心库提
19、供了JAVA编程语言核心库的大多数功能。每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。Dalvik是针对于同时高效地运行多个VMS来实现的。Dalvik虚拟机执行.dex的Dalvik可执行文件,该格式文件针对最小内存使用做了优化。该虚拟机是基于寄存器的,所有的类都经由JAVA汇编器编译,然后通过SDK中的dx工具转化成.dex格式由虚拟机执行。Dalvik虚拟机依赖于linux的一些功能,比如线程机制和底层内存管理机制。(4)操作系统层Android的核心系统服务依赖于Linux2.6内核,如安全性,内存管理,进程管理,网络协议和驱动模型。Lin
20、ux内核也同时作为硬件和软件堆栈之间的硬件抽象层。2.2 安卓应用程序开发的核心技术2.2.1 Android应用程序开发语言JAVA是Android上的主流开发语言,各种支持也最完善。Android发布的API和SDK也都主要是面向JAVA开发人员的。我的播放器实例也是用JAVA开发的。2.2.2 Android应用程序组件Android 应用程序最大的一个特点就是每个应用都由若干组件构成。而且各个应用程序的组件还可以相互调用(需要在代码中设置相应权限)。例如假设我们需要编写一个内嵌于网页的程序,那么我们无需亲自编写浏览器,而是可以直接调用系统自带的Chrome Lite浏览器组件。又如假设
21、我们编写了两个应用程序,其中一个程序中有列表显示图标的组件,那么我们在另一个应用程序中就可以使用该组件,而不需要在编写该功能。也就是说,不同于我们平常编写的程序,Android的应用程序不是单一入口,而是可以从代码的不同位置启动。这就要依靠组件来实现。Android应用程序的组件有以下四种:(1) Activity一个Activity实际上表现出来的就是一个程序的界面。这个界面可能有许多不同的形式,比如有列表形式,有文字形式,有图像格子等形式。一个应用程序也可能有不止一个Activity。比如一耳光短消息的程序,需要有列表显示所有消息的Activity,还至少需要一个编辑短信的Activity
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 毕业设计 基于 android 音乐 播放 设计 实现
限制150内