ImageVerifierCode 换一换
格式:DOCX , 页数:64 ,大小:692.82KB ,
资源ID:22632714      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/22632714.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Android在线音乐播放器设计与实现Word格式.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Android在线音乐播放器设计与实现Word格式.docx

1、手机的越来越智能化相当大的程度都要通过软件和应用来体现,2011年盛放的移动互联网应用市场带来了各门类的诸多精品应用,音乐播放器市场更是如此,除了传统单一的本地播放功能,Android平台的音乐播放器已经衍生出支持多格式、歌曲信息多合一提供、资源不仅依靠本地而且靠移动互联网提供、辅助功能完善的多种或集百家精粹,或有一技之长的精品播放器。(1) 音乐 音乐是腾讯公司推出的网络音乐平台,是中国互联网领域领先的正版数字音乐服务的领先平台,始终走在音乐潮流最前端,向广大用户提供方便流畅的在线音乐和丰富多彩的音乐社区服务。 音乐的缺点是如果要享受全部功能需要付费开通VIP。(2)酷狗音乐酷狗是中国领先的

2、数字音乐交互服务提供商,互联网技术创新的领军企业,致力于为互联网用户和数字音乐产业发展提供最佳的解决方案。酷狗具有良好的音乐效果,丰富的网络音乐资源,简单的操作成为酷狗音乐吸引用户的特色。酷狗音乐的缺点是广告较多,且不能关闭。(3)天天动听天天动听(TTPOD)是水渡石信息技术开发音乐播放器,是一款功能强大、完全免费的音乐播放软件。支持歌词和歌曲图片下载,皮肤随心更换,更有炫丽震撼的可视化效果,同时预置丰富的均衡器效果,支持音效增强,简洁人性化的操作,给追求音乐品质的你带来了手机听歌的全新体验。天天动听的缺点是在低存手机上有明显的卡顿。1.3 目标与围基于以上前提,决定设计并开发一款轻量级的、

3、界面美观的、操作简单的、免费的在线音乐播放器波尼音乐。本软件是一款Android在线音乐播放器,支持播放本地歌曲与网络歌曲。系统主要实现的功能是播放本地/网络歌曲,控制音乐的播放、暂停,支持歌词与专辑封面显示,自动从云端匹配并下载歌词,拥有多元化的歌曲排行榜,可以根据歌曲或歌手搜索相关歌曲,喜欢的歌曲可以一键下载到本地,支持睡眠模式、夜间模式等实用功能。复古的黑胶唱片设计,使用户仿佛置身于二十世纪的音乐会现场,给用户带来充满空灵感和现场感的体验。软件体积小,运行流畅,界面干净无广告,无多余权限,致力于提升用户的听歌体验。实施本项目需要的硬件资源如下:(1)x86架构电脑一台(CPU Intel

4、 i5、存8GB、存储空间500GB)(2)Android智能手机一台实施本项目需要的软件资源如下:(1)JDK 1.8(2)Android SDK 23(3)Gradle 2.0(4)Android Studio 2.02 1.4 核心技术本项目用到的开源技术有:( s:/github./square/ok ) 是现在主流应用使用的网络请求方式,用来交换数据和容,有效的使用 可以使APP变的更快和减少流量的使用。Ok 是一个很棒 客户端:(1)支持SPDY,可以合并多个到同一个主机的请求(2)使用连接池技术减少请求的延迟(如果SPDY是可用的话)(3)使用GZIP压缩减少传输的数据量(4)缓

5、存响应避免重复的网络请求系统主要利用Ok 进行网络请求,与服务器交换数据。Gson/github./google/gson)Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象,或者反过来。功能:(1)使用toJson()和fromJson()方法,就可以非常容易的完成Java对象到JSON的相互转换。(2)能将预先存在的无法修改的对象与JSON互相转换。(3)支持Java泛型的使用。(4)允许对象的个性化表达形式(representation)。(5)支持各种复杂(拥有深继承层次结构和大

6、量使用泛型类型)的对象。系统主要利用Gson配合Ok 将软件从服务器获取的原始数据进行快速解析。Android-Universal-Image-Loader/github./nostra13/Android-Universal-Image-Loader)Android-Universal-Image-Loader是一个开源的UI组件程序,该项目的目的是提供一个可重复使用的仪器为异步图像加载,缓存和显示。特点:(1)多线程的图像加载;(2)图片异步加载缓存机制,包括存缓存(软引用)与本地缓存;(3)动态对ImageLoader的配置(线程池的大小, 选项,存和光盘高速缓存方式,显示图像,以与其他

7、选项);(4)对加载过程实现监听和事件处理;(5)能够配置加载图片的显示选项,包括图片圆角处理和加载完成显示动画等。系统主要利用Android-Universal-Image-Loader将歌手、专辑等图片进行高效的缓存,以提高应用性能,并解决用户流量。第2章 Android音乐播放器需求分析2.1 功能性需求分析根据项目要达到的目标,需要制定系统的基本需求,接下来将根据不同模块描述系统需求,并配合用例图来描述系统的功能性需求。分为以下五个模块来描述:本地音乐需求,在线音乐需求,正在播放(播放控制)需求,在线搜索需求,扩展功能需求。2.1.1 本地音乐本地音乐列表的需求图2-1 本地音乐用例图

8、(1)播放参与者:使用者目标:使使用者可以播放所点击歌曲前置条件:应用已启动,且在“我的音乐”页面基本事件流:a.使用者点击需要播放的歌曲itemb.播放器将播放使用者所点击的歌曲(2)分享使使用者可以将所选歌曲分享给好友应用已启动,且在“我的音乐”页面,点击“更多”按钮a.使用者点击需要分享歌曲item的“更多”按钮,并点击“分享”b.系统将提示使用者选择分享方式(3)设为铃声使使用者可以将所选歌曲设置为手机铃声a.使用者点击需要设为铃声歌曲item的“更多”按钮,并点击“设为铃声”b.播放器将所选歌曲设置为手机铃声(4)删除使使用者可以将所选歌曲删除a.使用者点击需要删除歌曲item的“更

9、多”按钮,并点击“删除”b.播放器将所选歌曲删除并从播放列表中移除2.1.2 在线音乐 当用户点击“在线音乐”中的歌曲排行榜时的需求图2-2 在线歌单用例图(1)查看歌曲排行榜使使用者可以查看所选的歌曲排行榜应用已启动,且在“在线音乐”页面a.使用者点击需要查看的歌曲排行榜itemb.播放器将打开所选的歌曲排行榜c.歌曲排行榜显示排行榜说明、更新时间、歌曲列表当用户点击进入歌曲排行榜后,点击歌曲item的“更多”按钮的需求图2-3 在线音乐用例图使使用者可以播放所点击的网络歌曲应用已启动,且在“歌曲排行榜”页面a.使用者点击需要播放的网络歌曲itemb.播放器将播放使用者所点击的网络歌曲使使用

10、者可以将所选网络歌曲的试听分享给好友应用已启动,且在“歌曲排行榜”页面,点击“更多”按钮a.使用者点击需要分享网络歌曲item的“更多”按钮,并点击“分享”(3)查看歌手信息使使用者可以查看所选歌曲的歌手的详细信息a.使用者点击需要查看歌手信息的网络歌曲item的“更多”按钮,并点击“查看歌手信息”b.播放器将跳转到“歌手信息”界面,显示歌手图片、身高、体重、简介等信息(4)下载使使用者可以将所选网络歌曲与其匹配的歌词下载到本地a.使用者点击需要下载网络歌曲item的“更多”按钮,并点击“下载”b.播放器将下载使用者所选网络歌曲与其匹配的歌词,并在下载完成后自动添加到“我的音乐”列表2.1.3

11、 在线搜索在线搜索时的需求图2-4 在线搜索用例图(1)搜索使使用者可以根据输入的歌曲名/歌手名搜索相关歌曲应用已启动,且在“搜索”界面,系统已连接至互联网a.使用者输入歌曲名/歌手名并点击搜索b.播放器将搜索结果以列表的形式展示(2)播放同在线音乐“播放”需求(3)分享同在线音乐“分享”需求2.1.4 播放控制播放控制的需求图2-5 播放控制用例图(1)播放/暂停使使用者可以播放/暂停当前歌曲应用已启动,且在“正在播放”页面a. 使用者点击播放/暂停按钮b.播放器将播放/暂停当前歌曲(2)上一曲使使用者可以切换到上一首歌曲a. 使用者点击上一曲按钮b.播放器将切换到上一首歌曲(3)下一曲使使

12、用者可以切换到下一首歌曲a.使用者点击下一曲按钮b.播放器将切换到下一首歌曲(4)播放模式使使用者可以切换播放模式(全部循环/随机播放/单曲循环)a.使用者点击切换播放模式按钮b.播放器将切换播放模式(5)显示专辑封面使正在播放界面可以显示当前歌曲的专辑封面,并添加旋转动画应用已启动,且在“正在播放”页面,且当前正在播放的歌曲包含专辑封面播放器播放歌曲时自动显示其专辑封面,没有封面的歌曲显示默认封面(6)显示歌词使正在播放界面可以显示当前歌曲的歌词,并滚动显示应用已启动,在“正在播放”页面,当前正在播放的歌曲包含歌词播放器播放歌曲时自动显示其歌词,并根据歌曲播放进度自动滚动到相应位置,没有歌词

13、的歌曲参见“自动搜索歌词”需求(7)自动搜索歌词如果当前播放的歌曲没有歌词,则从网络搜索并下载歌词应用已启动,且在“正在播放”页面,且当前正在播放的歌曲不包含歌词,系统已连接至互联网播放器播放歌曲时如果没有歌词,则自动从网络搜索并下载,下载完成后自动显示,同“显示歌词”需求(8)播放进度调节使使用者可以调节当前播放歌曲的进度a.使用者拖拽播放进度条b.播放器自动跳转到用户选择的位置(9)音量调节使使用者可以调节音量a.使用者拖拽音量进度条b.系统自动调节音量2.1.5 扩展功能播放器附带的扩展功能需求图2-6 扩展功能用例图(1)天气使播放器可以自动定位并显示当前城市的实时天气信息应用已启动,

14、系统已连接至互联网a.使用者启动应用b.播放器将自动定位并显示当前城市的实时天气信息,包括天气、城市、风力、湿度等信息(2)功能设置使使用者可以自定义播放器的偏好设置应用已启动,打开设置界面a.使用者点击设置项b.播放器自动保存所选设置项,包括是否允许移动网络播放在线歌曲、音效调节等(3)夜间模式使使用者可以切换夜间/日间模式应用已启动a.使用者点击夜间模式b.播放器自动切换到夜间/日间模式,不影响当前播放的歌曲(4)定时停止播放使使用者可以定时停止播放歌曲并退出应用a.使用者点击定时停止播放b.播放器弹出对话框让使用者设定时间c.到达使用者设置的事件后自动停止播放并退出应用(5)关于说明使使

15、用者可以查看播放器的关于说明a.使用者点击关于b.播放器跳转到关于界面,包含应用版本、检查更新、推荐给朋友、作者信息等(6)启动界面使播放器定期更新启动界面图b.播放器检查本地是否已经下载了启动界面图片,如果没有,则从网络后台下载;如果已经下载,则直接展示启动画面图2.2 非功能性需求分析2.2.1 软件性能指标存占用:3040MBCPU占用:510%启动时间:12s流量消耗:每次运行消耗1000KB以(下载流量除外)FPS:25302.2.2 软件兼容性系统:Android 4.0或更高RAM:128MB或更高ROM:256MB或更高CPU架构:ARM、x86、MIPS第3章 Android

16、音乐播放器系统概要设计3.1 主要设计容系统设计了一个Android平台的在线音乐播放器,基于Native方式进行开发。采用MVC框架,将项目的视图层、数据层和逻辑层分离组织,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面与用户交互的同时,不需要重新编写业务逻辑。MVC模式图如下:图3-1 MVC模式系统基于Android开源平台,使用Java语言编写,视图层使用xml实现。使用Service后台播放音乐,通过Binder绑定Service并设置回调的方式实现前台界面(Activity)到后台服务(Service)之间的交互。系统和服务器采用json数据,通过Ok +Gson进行数据的传

17、输和解析。服务器为XX在线音乐服务,通过暴露的rest API接口,使得客户端可以从服务器获得在线音乐数据。3.2 设计思想系统由本地音乐文件与XX音乐服务器提供播放源,前台界面展示播放效果。图3-2 设计思想前台界面包括Activity和Fragment,Activity通过bindService方法可以得到Service的实例,然后通过Service的方法设置Activity的回调,Activity收到回调事件后抄送给Fragment。在线音乐部分通过Ok +Gson从XX音乐服务获取并解析数据,图片缓存通过Universal-Image-Loader的三级缓存实现。3.3 系统框架系统主

18、要分为后台服务,数据层,业务层,前台界面四个层次,后台服务主要提供播放逻辑控制,数据层包括本地数据和服务器数据,业务层是各个功能模块,前台界面展示当前播放歌曲的信息。图3-3 系统框架图3.4 系统功能系统主要包括本地音乐,在线音乐等几大功能,功能如下图:图3-4 系统功能3.4.1 本地音乐本地音乐功能包括播放,分享,设为铃声等功能,具体功能如下图:图3-5 本地音乐3.4.2 在线音乐在线音乐功能包括播放,分享,查看歌手信息等功能,具体功能如下:图3-6 在线音乐3.4.3 在线搜索在线搜索功能包括搜索,播放,分享,下载功能,具体功能如下:图3-7 在线搜索3.4.4 播放控制播放控制功能

19、主要包括上一曲/下一曲,播放进度调节,播放模式切换等,具体功能如下图:图3-8 播放控制3.4.5 扩展功能扩展功能包括夜间模式,定时关闭,自动更新等功能,具体功能如下图:图3-9扩展功能3.5 流程设计系统主界面显示本地音乐列表,在线歌单列表,快速播放控制以与侧边菜单栏,点击本地音乐可以播放,点击歌单可以进入歌单详情,点击快速播放控制条可以进入正在播放界面,侧边菜单栏包括一些附加功能,系统总体流程图如下:图3-10 流程设计图第4章 Android音乐播放器存储设计4.1 本地存储该系统支持用户自定义偏好设置,因此需要设计本地存储。Android目前有以下三种存储方式。(1)使用Shared

20、Preferences存储数据适用围:保存少量的数据,且这些数据的格式非常简单:字符串型、基本类型的值。比如应用程序的各种配置信息(如是否打开音效、是否使用震动效果、小游戏的玩家积分等),解锁口令密码等。核心原理:保存基于XML文件存储的key-value键值对数据,通常用来存储一些简单的配置信息。通过DDMS的File Explorer面板,展开文件浏览树,很明显SharedPreferences数据总是存储在/data/data/shared_prefs目录下。SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过SharedPreferences.edit()获取的部接口Editor对象实现。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1