本科生毕业设计(论文)开题报告
论文题目: 基于android的在线音乐播放器的设计与实现
学 院: 软件学院
专 业:
学生姓名:
学生班级:
学生学号:
指导教师:
基于android的在线音乐播放器的设计与实现
一、课题的研究目的和意义
现如今社会生活节奏日益加快,人们在忙碌的生活中欣赏音乐是最好的舒缓压力的方式之一。随着移动设备的日益完善,我们大家都已经有了在手机上听自己喜欢歌曲的习惯,以往的做法是用数据线或者蓝牙等无线设备将PC上的歌曲复制几首到手机当中,反反复复的听,等到听厌了以后,再次装一些歌曲进去,如此反复,非常的麻烦。因此,如果在我们的手机上能实现在线听歌,这将会带来极大的方便。
本项目是一款基于Android手机平台的音乐播放器,使Android手机拥有个性的多媒体播放器,是手机显得更生动灵活化,与人们更为方便,让手机主人随时随地处于音乐的旋律之中。本设计实现的重要功能是播放Mp3格式的音乐文件,并且能够控制音乐的播放,暂停,显示歌手信息,歌曲专辑等功能。本项目还可以使人们生活更加多样化,也使设计者更加熟悉Android的技术和其它在市场上的特点。
二、国内外发展状况
1. 目前中国拥有世界上最大的手机用户群,Android在中国的前景十分广阔,首先是有成熟的消费者,Android社区是分红或,这些社区为Android在中国的普及做了很好的推广作用。国内厂商和运营商也纷纷加入了Android阵营,保过中国移动、中国联通、中心通讯、华为通讯、联想等大企业,同时还不仅仅局限于手机,国内厂家也陆续退出了采用Android系统的MID产品,比较著名的包括由Rock chip和蓝魔推出的同时具备高清播放和智能系统的音乐汇W7和20xx年推出的原道N5,我们可以预见Android也将会被广泛应用在国产智能上网设备上,将进一步扩大Android系统的应用范围。
2. 国外Android市场正在如日中天的扩展,根据市场调研机构NPDGroup最近发布的一份报告称,今年第一季度基于Android操作系统的智能手机在美国智能手机总销售量中所占比例达到28%,超越苹果iPhone。20xx年另一家市场研究公司comScore发布报告称,第三季度三星和Android操作系统仍在美国移动市场上占据主导地位。报告显示,在对3万多名美国移动用户进行调查后发现,谷歌Android平台第三季度仍在美国市场上占据主导地位,所占份额为52.5%,比第二季度增长近1个
百分点;苹果排名第二,其iOS平台所占份额为34.3%,环比增长1.9%。与此同时,RIM、Symbian和微软Windows Phone所占份额均有所下滑,其中RIM所占份额从10.7%下降至8.4%,Symbian从0.9%下降至0.6%,Windows Phone从3.8%下降至3.6%。相信在不久的将来会有更多的用户选择Android系统的手机或是无线终端设备。
三、研究内容
作为Android平台上开发的应用软件,本设计具备与用户交互的界面,界面简洁美观易于操作。更重要的是播放器的基础功能和扩展功能。播放器主要由前台界面和后台数据库构成。前台界面主要实现和用户的交互,基本功能要实现歌曲的播放控制,还要显示曲目列表,能对曲目列表进行插入,删除,修改。扩展功能包括跳转到在线歌曲查找页面,方便用户在线搜索,要能显示搜索结果的歌曲及信息;在歌曲播放界面下,要能显示歌词和图片。播放器前台界面功能结构如图1所示。后台数据库部分主要记录歌曲信息,能和前台程序进行交互。主要功能包括歌曲的存储,列表信息的存储,在线歌曲的存储以及歌词和图片的存储。播放器后台数据库结构如图2所示。
下面介绍播放器各个功能模块。
(1)歌曲的播放控制
提供音乐播放功能是音乐客户端的基本功能,要能对音乐进行开始,停止,对歌曲列表进行上一首、下一首操作,按照歌曲列表的排列实现多功能播放模式,如单曲循环,顺序播放,随机播放等。
(2)歌曲在线播放
作为一款在线音乐客户端,需要提供给用户在线选歌的方便,提供在线播放歌曲的即时信息,如歌曲名,歌手名,时长等等。搜索后可以进行试听,如果满意可以将歌曲添加到播放列表。
(3)歌曲列表管理
音乐播放器要能够将歌曲文件组织成列表的形式,并提供歌曲列表的管理,可以为用户提供本地歌曲列表,最近播放列表。还要对列表中的歌曲实现添加,删除功能。
(4)歌词显示和控制,图片显示
为正在播放的歌曲显示歌词,同时能对没有歌词或者歌词不匹配的歌曲进行添加歌词,并存入数据库,以便下次播放时可以显示歌词。还要针对不同歌曲可以显示歌手图片或者专辑图片,没有图片的歌曲,用户也可以根据自己的喜好添加图片。
图1播放器前台结构
下面介绍后台数据库实现的功能。 (1)本地歌曲数据存储
本地歌曲管理需要记录歌曲的曲名、歌手、时长等信息,需要为音乐播放器记录歌曲的歌词,并且能使用户更新这些歌词。还要记录和歌曲相关的图片信息。当歌曲播放时,前台页面可以显示出这些信息。 (2)列表信息数据存储
列表信息包括用户的基本播放列表和最近播放列表。当用户对这些列表中的歌曲进行更新时,数据库要存入最近的数据信息。 (3)在线歌曲管理
在线歌曲管理记录的信息和本地歌曲一样,要记录歌曲的曲名,歌手,时长等信息。如能匹配到歌词还要记录歌词信息和歌曲相关的图片信息。
图2播放器后台数据库结构
四、拟采用的方法和手段
考虑到音乐播放可以脱离用户界面而单独存在,并能长时间的在后台运行,是一段具有较长生命周期的应用。这与Android所提供的Service组件效果不谋而合,因此播放控制核心被设计成一个Service。它提供歌曲播放服务,响应用户事件,同时与具体的用户界面相独立。用户可以通过按钮控件来进行歌曲的播放、暂停、上一首、下一首等控制。播放的控制入口操作包括列表中歌曲的点击、单击播放器的开始播放按钮。
网络连接模块对于一款在线音乐客户端来说是必不可少的部分。它提供了客户端与服务器的网络连接功能,是两者交换的桥梁。通过网络连接,客户端可以发送不同请求,从服务器获得需要的资源。由于上层功能的多样性,网络连接模块的设计在保证基础的通信功能的同时,需要针对不同的需求,提供一些差异性的接口。
数据存储模块是系统的基础,需要为上层模块中的数据操作提供持久化服务。格局不同的需求,该在线音乐客户端中存储的数据被设计成了使用不同的方式来存储。首先是歌曲信息的存储,歌曲本身以文件的形式存在与本地文件系统中的,本地扫描的文件或者网络播放、下载的文件的相关信息,在客户端中以SQLite数据库的形式
来存储,SQLite数据表中的每一条记录对应着一个相关的歌曲信息。歌曲文件被抽象为Music类,歌曲包含歌曲名,歌手名,专辑名等等,这些属性将会存储在数据库表中。其次是歌曲列表存储,由于数据库中的每个歌曲记录可能同时属于多个的列表,一首歌曲也可能同时属于多个列表。所以要为这些列表设计专门的数据库表,中间将涉及到更多的数据库操作,因此将列表设计为一系列歌曲id的组合,写入二进制文件中。
五、工作计划及进度安排
表1 工作进度表
参考文献
[1]王秀芳,杨阳.基于Android的YOBO在线音乐播放器[R].大庆:东北石油大学,2011.
[2]林福严.基于Android平台的在线音乐客户端设计与实现[D].北京:中国地质大学,2011.
[3]吴善财.Android基础开发与实践[M].北京:清华大学出版社,2012.
[4]刘晓东.基于Android系统的MIDI音乐播放器的设计与实现[D].内蒙古:内蒙古科技大学,2012.
[5]斳岩,姚尚朗.Android开发入门与实践[M].北京:人民邮电出版社,2009.
[6]许瑾.基于Android平台音乐播放器的设计与实现[D].北京:北京邮电大学,2011.
[7]Nie Chunyan,Xu Dawei.Based on Android Music Player[Z].New York:Springer Berlin Heidelberg,2012. [8]Shawn Van Every.Pro Android Media[M].Berkeley:Apress,2010.
[9]Marziah Karch.Android for Work[M].Berkeley:Apress,2010.
[10]黄敏伟.Android平台的即时通信系统客户端设计方案[D].陕西渭南:陕西铁路工程事业技术院校,2011.
[11]苗忠良,宛斌.Android多媒体编程[M].北京:电子工业出版社,2011.
第二篇:在线音乐播放器完整项目
在线音乐播放器完整项目
2012-03-22 15:16:27 390次访问
作者:admin 来源:eoe开发者社区
关键词: 在线音乐 播放器 完整
我知道许多新人,希望得到一套真正好的商业源码供自己学习,但大多数人拥有好的资源的人都非常自私,不愿分享。现在机会来了。
现在这套源码,是本人从国外网站下download的开源代码。具有极高的参考价值,不管对于新手,还是开发老鸟都非常有用。
整套源码主要实现了专辑浏览,音乐在线播放,下载等等。虽说看起来功能不多,但是绝对十分具有参考价值,考虑的十分严谨。因为里面应用了网络通 讯,json解析,全局
mediaservice,自定义View组件,自定义Adapter,application全局缓存,变量等等,所有要在项目 中考虑到的优化问题,现在论坛代码片段很多但像这样一套完整代码绝对不多。 本人保证,此套项目绝不逊于商业项目
要下载的,赶紧。希望更多的人能从中获益....
贴图..
上层专辑由gallery实现,动态延迟加载图片。
分类也是图片延迟加载,非常快的响应,数据由json传递,自定的imageView动态获取显示。
点击上层专辑会加载播放,如图
播放页效果,同时会在notification提醒,以便用户随时开启。
底层可以上拉,更多的功能....
/uploadfile/2012/0322/20xxxxxxxxxxxx71.zip