Android在线音乐播放器设计与实现.doc
《Android在线音乐播放器设计与实现.doc》由会员分享,可在线阅读,更多相关《Android在线音乐播放器设计与实现.doc(53页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、. . . . Android在线音乐播放器设计与实现摘要:移动互联网发展瞬息万变,以往的随身听、MP3等千篇一律的播放设备已经越来越难以满足人们多样化的听音乐需求了,而市面上的音乐播放器APP却深陷商业的漩涡,盈利和用户体验总是难以成正比,看似琳琅满目的音乐应用却没有几款真正让用户喜欢的。在这样的背景下,课题基于Android开源平台,使用Java语言开发,采用Android Studio + Gradle工具构建,并依靠Ok +Gson提供网络框架,开发了一款Android在线音乐播放器。播放器支持播放在线音乐,上一曲、下一曲,切换播放模式,支持歌词与专辑封面显示,支持搜索、下载在线歌曲等
2、基本功能,并扩展实现了夜间模式,定时关闭等功能,致力于给用户提供更舒心的听歌体验。论文给出详细的框架设计,系统流程设计,部分设计图与主要功能运行流程图,并对开发中遇到的主要问题进行了详细讨论,如通过Activity和Service通信实现后台播放。经过系统测试,系统实现了基本功能和扩展功能,性能达到了一定的指标。关键词:在线音乐;播放器;定时关闭;Gradle;Ok Design and Implementation of Android-based Online Music PlayerAbstract: The development of mobile Internet is const
3、antly changing, the previous Walkman, MP3 player and other devices have been stereotyped increasingly difficult to meet peoples demand for a variety of music, and the music player market, APP has deep whirlpool business, earnings and proportional to the user experience is always difficult, seemingly
4、 dazzling music application did not allow several users to really like it. In this context, an object based on the Android open source platform developed using the Java language, using Android Studio + Gradle build tool, and rely Ok + Gson provide network framework, developed an Android online music
5、 player. Player supports playback of online music, the song, the next song, switch the playback mode, support for lyrics and album art display, supports searching, downloading songs online and other basic functions, and expanded to achieve a night mode, time off and other functions, is committed to
6、to provide a more enjoyable experience of listening to music. Paper gives a detailed framework design, system design process, part of the design and operation of the main function of a flow chart, and the development of the main problems encountered were discussed in detail, for example, by Activity
7、 and Service Communication between Play in background. After testing the system, the system to achieve the basic functions and extensions, reach a certain performance targets.Keywords: online music, player, time off, gradle, ok 目录第1章 绪论11.1 背景11.2 国外现状11.3 目标与围21.4 核心技术3第2章 Android音乐播放器需求分析52.1 功能性需
8、求分析52.1.1 本地音乐52.1.2 在线音乐62.1.3 在线搜索82.1.4 播放控制92.1.5 扩展功能122.2 非功能性需求分析142.2.1 软件性能指标142.2.2 软件兼容性14第3章 Android音乐播放器系统概要设计153.1 主要设计容153.2 设计思想153.3 系统框架163.4 系统功能173.4.1 本地音乐173.4.2 在线音乐183.4.3 在线搜索183.4.4 播放控制193.4.5 扩展功能193.5 流程设计19第4章 Android音乐播放器存储设计214.1 本地存储214.2 远程存储22第5章 Android音乐播放器详细设计与实
9、现235.1 系统架构详细设计235.1.1 系统架构方式分析235.1.2 系统框架分析245.1.3 网络请求框架分析275.1.4 数据缓存框架285.2 功能详细设计305.2.1 本地音乐详细设计305.2.2 在线音乐详细设计325.2.3 在线搜索详细设计345.2.4 播放控制详细设计355.2.5 扩展功能详细设计375.2.6 功能设置详细设计395.2.7 关于界面详细设计41第6章 Android音乐播放器系统测试436.1 功能测试436.1.1 测试环境436.1.2 测试用例436.1.3 测试结论446.2 兼容性测试45结论47致48参考文献4948 / 53
10、第1章 绪论1.1 背景Android是一种基于Linux的自由与开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导与开发。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%。2013年09月24日谷歌开发的操作系统Android在迎来了5岁生日,全世界采用这款系统的设备数量已经达到10亿台。如今,Android平台手机的全球市场份额已达到84.7%。本设计的音乐播放器采用了Android开源系统技术,利用Java语言和Android S
11、tudio工具对播放器进行开发。如今社会生活节奏日益加快,人们的压力也越来越大,倾听音乐则是最有效的减轻压力的方法之一。随着智能手机的普与,手机音质的提升,大多数人都有了在手机上听歌的习惯,纵观市面上的商业化音乐播放APP,大多臃肿不堪,功能繁琐,而大多数功能都是用户用不到的,大量消耗手机存和CPU,操作复杂,同质化严重,广告繁多,界面设计没有吸引力,容易产生审美疲劳,无法使人全身心的放松,有时遇到喜欢的音乐想要下载还要付费,大大降低了听歌体验。1.2 国外现状手机的越来越智能化相当大的程度都要通过软件和应用来体现,2011年盛放的移动互联网应用市场带来了各门类的诸多精品应用,音乐播放器市场更
12、是如此,除了传统单一的本地播放功能,Android平台的音乐播放器已经衍生出支持多格式、歌曲信息多合一提供、资源不仅依靠本地而且靠移动互联网提供、辅助功能完善的多种或集百家精粹,或有一技之长的精品播放器。(1) 音乐 音乐是腾讯公司推出的网络音乐平台,是中国互联网领域领先的正版数字音乐服务的领先平台,始终走在音乐潮流最前端,向广大用户提供方便流畅的在线音乐和丰富多彩的音乐社区服务。 音乐的缺点是如果要享受全部功能需要付费开通VIP。(2) 酷狗音乐酷狗是中国领先的数字音乐交互服务提供商,互联网技术创新的领军企业,致力于为互联网用户和数字音乐产业发展提供最佳的解决方案。酷狗具有良好的音乐效果,丰
13、富的网络音乐资源,简单的操作成为酷狗音乐吸引用户的特色。酷狗音乐的缺点是广告较多,且不能关闭。(3) 天天动听天天动听(TTPOD)是水渡石信息技术开发音乐播放器,是一款功能强大、完全免费的音乐播放软件。支持歌词和歌曲图片下载,皮肤随心更换,更有炫丽震撼的可视化效果,同时预置丰富的均衡器效果,支持音效增强,简洁人性化的操作,给追求音乐品质的你带来了手机听歌的全新体验。天天动听的缺点是在低存手机上有明显的卡顿。1.3 目标与围基于以上前提,决定设计并开发一款轻量级的、界面美观的、操作简单的、免费的在线音乐播放器波尼音乐。本软件是一款Android在线音乐播放器,支持播放本地歌曲与网络歌曲。系统主
14、要实现的功能是播放本地/网络歌曲,控制音乐的播放、暂停,支持歌词与专辑封面显示,自动从云端匹配并下载歌词,拥有多元化的歌曲排行榜,可以根据歌曲或歌手搜索相关歌曲,喜欢的歌曲可以一键下载到本地,支持睡眠模式、夜间模式等实用功能。复古的黑胶唱片设计,使用户仿佛置身于二十世纪的音乐会现场,给用户带来充满空灵感和现场感的体验。软件体积小,运行流畅,界面干净无广告,无多余权限,致力于提升用户的听歌体验。实施本项目需要的硬件资源如下:(1) x86架构电脑一台(CPU Intel i5、存8GB、存储空间500GB)(2) Android智能手机一台实施本项目需要的软件资源如下:(1) JDK 1.8(2
15、) Android SDK 23(3) Gradle 2.0(4) Android Studio 2.02 1.4 核心技术本项目用到的开源技术有:Ok ( s:/github./square/ok ) 是现在主流应用使用的网络请求方式,用来交换数据和容,有效的使用 可以使APP变的更快和减少流量的使用。Ok 是一个很棒 客户端:(1) 支持SPDY,可以合并多个到同一个主机的请求(2) 使用连接池技术减少请求的延迟(如果SPDY是可用的话)(3) 使用GZIP压缩减少传输的数据量(4) 缓存响应避免重复的网络请求系统主要利用Ok 进行网络请求,与服务器交换数据。Gson( s:/github
16、./google/gson)Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象,或者反过来。功能:(1) 使用toJson()和fromJson()方法,就可以非常容易的完成Java对象到JSON的相互转换。(2) 能将预先存在的无法修改的对象与JSON互相转换。(3) 支持Java泛型的使用。(4) 允许对象的个性化表达形式(representation)。(5) 支持各种复杂(拥有深继承层次结构和大量使用泛型类型)的对象。系统主要利用Gson配合Ok 将软件从服务器获取的原始数据进行
17、快速解析。Android-Universal-Image-Loader( s:/github./nostra13/Android-Universal-Image-Loader)Android-Universal-Image-Loader是一个开源的UI组件程序,该项目的目的是提供一个可重复使用的仪器为异步图像加载,缓存和显示。特点:(1) 多线程的图像加载;(2) 图片异步加载缓存机制,包括存缓存(软引用)与本地缓存;(3) 动态对ImageLoader的配置(线程池的大小, 选项,存和光盘高速缓存方式,显示图像,以与其他选项);(4) 对加载过程实现监听和事件处理;(5) 能够配置加载图片的
18、显示选项,包括图片圆角处理和加载完成显示动画等。系统主要利用Android-Universal-Image-Loader将歌手、专辑等图片进行高效的缓存,以提高应用性能,并解决用户流量。第2章 Android音乐播放器需求分析2.1 功能性需求分析根据项目要达到的目标,需要制定系统的基本需求,接下来将根据不同模块描述系统需求,并配合用例图来描述系统的功能性需求。分为以下五个模块来描述:本地音乐需求,在线音乐需求,正在播放(播放控制)需求,在线搜索需求,扩展功能需求。2.1.1 本地音乐本地音乐列表的需求图2-1 本地音乐用例图(1) 播放参与者:使用者目标:使使用者可以播放所点击歌曲前置条件:
19、应用已启动,且在“我的音乐”页面基本事件流:a.使用者点击需要播放的歌曲itemb.播放器将播放使用者所点击的歌曲(2) 分享参与者:使用者目标:使使用者可以将所选歌曲分享给好友前置条件:应用已启动,且在“我的音乐”页面,点击“更多”按钮基本事件流:a.使用者点击需要分享歌曲item的“更多”按钮,并点击“分享”b.系统将提示使用者选择分享方式(3) 设为铃声参与者:使用者目标:使使用者可以将所选歌曲设置为手机铃声前置条件:应用已启动,且在“我的音乐”页面,点击“更多”按钮基本事件流:a.使用者点击需要设为铃声歌曲item的“更多”按钮,并点击“设为铃声”b.播放器将所选歌曲设置为手机铃声(4
20、) 删除参与者:使用者目标:使使用者可以将所选歌曲删除前置条件:应用已启动,且在“我的音乐”页面,点击“更多”按钮基本事件流:a.使用者点击需要删除歌曲item的“更多”按钮,并点击“删除”b.播放器将所选歌曲删除并从播放列表中移除2.1.2 在线音乐 当用户点击“在线音乐”中的歌曲排行榜时的需求图2-2 在线歌单用例图(1) 查看歌曲排行榜参与者:使用者目标:使使用者可以查看所选的歌曲排行榜前置条件:应用已启动,且在“在线音乐”页面基本事件流:a.使用者点击需要查看的歌曲排行榜itemb.播放器将打开所选的歌曲排行榜c.歌曲排行榜显示排行榜说明、更新时间、歌曲列表当用户点击进入歌曲排行榜后,
21、点击歌曲item的“更多”按钮的需求图2-3 在线音乐用例图(1) 播放参与者:使用者目标:使使用者可以播放所点击的网络歌曲前置条件:应用已启动,且在“歌曲排行榜”页面基本事件流:a.使用者点击需要播放的网络歌曲itemb.播放器将播放使用者所点击的网络歌曲(2) 分享参与者:使用者目标:使使用者可以将所选网络歌曲的试听分享给好友前置条件:应用已启动,且在“歌曲排行榜”页面,点击“更多”按钮基本事件流:a.使用者点击需要分享网络歌曲item的“更多”按钮,并点击“分享”b.系统将提示使用者选择分享方式(3) 查看歌手信息参与者:使用者目标:使使用者可以查看所选歌曲的歌手的详细信息前置条件:应用
22、已启动,且在“歌曲排行榜”页面,点击“更多”按钮基本事件流:a.使用者点击需要查看歌手信息的网络歌曲item的“更多”按钮,并点击“查看歌手信息”b.播放器将跳转到“歌手信息”界面,显示歌手图片、身高、体重、简介等信息(4) 下载参与者:使用者目标:使使用者可以将所选网络歌曲与其匹配的歌词下载到本地前置条件:应用已启动,且在“歌曲排行榜”页面,点击“更多”按钮基本事件流:a.使用者点击需要下载网络歌曲item的“更多”按钮,并点击“下载”b.播放器将下载使用者所选网络歌曲与其匹配的歌词,并在下载完成后自动添加到“我的音乐”列表2.1.3 在线搜索在线搜索时的需求图2-4 在线搜索用例图(1)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Android 在线音乐 播放 设计 实现
限制150内