基于Androi d的音乐播放软件的设计与实现
学 院 计算机学院
专 业 计算机科学与技术
姓 名 高锦朋 学 号 160201 102971
指导老师 许婷 职 称 讲师
中国·珠海
二○二○年五月
北京理工大学珠海学院2020届本科生毕业设计
诚信承诺书
本人郑重承诺本人承诺呈交的毕业设计《基于Android的音乐播放软件的设计与实现》是在指导教师的指导下独立开展研究取得的成果文中引用他人的观点和材料均在文后按顺序列出其参考文献设计使用的数据真实可靠。
本人签名 高锦朋
日期 2020 年5月 1 日
1
北京理工大学珠海学院2020届本科生毕业设计
基于Android的音乐播放软件的设计与实现
摘 要
随着社会的发展以及人们生活水平的提高音乐文化逐渐成为当今社会主流文化之
一走进了每个人的生活让人们得到了更好的放松、享受以及娱乐。与之崛起的就是音乐播放软件它不仅可以让人们具有随时随地享受音乐还能根据用户习惯推荐歌曲和歌单、评论互动等营造了良好的音乐氛围。
本文所设计的音乐播放软件共分五个功能模块页面 “发现”页和“我的”页可以保存用户收藏的音乐并根据用户的音乐风格偏好推荐歌曲。 同时规划出“视频”页、“动态”页两个功能页面丰富用户的娱乐内容 “动态”页面会从本地服务端获取图片。“账号”页会保存用户的基本信息。界面风格会以黑色和红色混搭为主。本文主要通过本地音乐和视频的播放控制的功能实现介绍MediaPlayer和Service的搭配使。借助BroadCastRec e iver、 Intent等实现不同软件页面间的信息交互。 同时将会使用自定义View美化控件外观。
关键词 音频播放控制、界面风格、移动开发、服务端
2
北京理工大学珠海学院2020届本科生毕业设计
The design and realization of music player software based on Android
Abstract
With the development of the society and the improvement ofpeople's living standard,music culture has gradually become one of the mainstream culture in today's society,whichhas entered everyone's life and made people get better relaxation,enjoyment andentertainment.With its rise is the music playing software,which not only enables people toenjoy music anytime and anywhere,but also can recommend songs and playlists,commentsand interactions according to users'habits,creating a good music atmo sphere.
This work is divided into five functional pages, "discover"page and"my"page can savethe user's music collection,and according to the user's music style preference to recommendsongs.At the same time, two functional pages of"video"page and"dynamic"page areplanned to enrich the entertainment content of users.The "dynamic"page will get picturesfrom the local server.The account page holds the user's basic information.The interface willbe a mix ofblack and red.This article mainly through the local music and video playbackcontrol function to achieve, introduced the MediaPlayer and Service collocation.With the helpof BroadCastReceiver, Intent,etc., information interaction between different so ftware pagescan be realized.Also,a custom View will be used to beautify the appearance of the control.Keyword s:Audio playback control, interface style,mobile development, server
3
北京理工大学珠海学院2020届本科生毕业设计
目 录
1前言. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
1. 1本设计的目的、意义. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
1.2国内流行的音乐播放软件简介. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
1.3本设计中的主要功能模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
2开发和运行的环境. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
2. 1开发软件的工具. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
2.2软件运行的环境. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
3软件功能实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
3. 1 UI布局模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
3. 1. 1五大页面之间的跳转. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
3. 1.2 “发现”页----DiscoveryFragment的布局. . . . . . . . . . . . . . . . . . . . . . . . . .9
3. 1.3 “视频”页----VideoFragment的布局. . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
3. 1.4 “我的”页----MineyFragment的布局. . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
3. 1.5 “动态”页----DynamicsFragment的布局. . . . . . . . . . . . . . . . . . . . . . . . . .18
3. 1.6 “账号”页----AccountFragment的布局. . . . . . . . . . . . . . . . . . . . . . . . . . .19
3. 1.7 “浸入式”状态栏. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
3.2本地音乐播放模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22
3.2. 1功能需求分析与实现分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22
3.2.2获取本地音乐. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
3.2.3在Service中实现MediaPlayer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
3.2.4歌单页面. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
3.2.5歌曲播放页面. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
3.2.6在MainActivity中实现自动切换下一首歌. . . . . . . . . . . . . . . . . . . . . . . . . .27
3.3本地视频播放模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27
3.4获取本地服务端的图片. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27
3.4. 1用xampp搭建本地服务端. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27
3.4.2获取本地服务端的图片. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29
4结论. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30
4
北京理工大学珠海学院2020届本科生毕业设计
参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31
致谢. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32
5
北京理工大学珠海学院2020届本科生毕业设计
1前言
音乐播放软件是一种用于播放各种音乐文件的多媒体播放软件它涵盖了各种音乐的播放工具界面美观操作简单是如今听音乐的必备软件。
1. 1本设计的目的、意义
在移动端市场里智能手机是用户的第一选择据IDC的最新报告2019年Andro id智能手机占全球手机市场份额的87%。Andro id软件借助着发达移动通信技术和计算机网络技术的功能使其自身功能上更加丰富强大加上美观且人性化UI界面满足了用户的基本需求提供了用户体验感。本文通过对基于Andro id平台的音乐播放软件的研究、设计展示And ro id的基本布局、 网络操作、数据存储、数据通信以及多媒体开发等基本技术体现当前受欢迎的音乐播放软件的风格设计以及基本功能。小巧且功能强大的音乐播放软件是当下及未来的一种必然趋势作为一名音乐爱好者能设计一款Andro id音乐播放器为人们空闲之时带来良好的音乐享受体验是一件非常有荣誉感的事情。
1.2国内流行的音乐播放软件简介
目前国内比较流行的音乐播放软件有网易云音乐播放器、QQ音乐播放器、酷狗音乐播放器等它们都具备各自的特点吸引了一批自己的音乐爱好者粉丝并在这一方面占有了各自的市场。在这里简单地介绍一下现在国内流行的音乐播放软件。
1网易云音乐播放器
网易云音乐播放器是一款网易公司打造的音乐播放器 由网易杭州研究院的开发与专业音乐人、DJ、 自由音乐创造者、主播等合作开发了好友推荐、动态评论以及社交等功能。 网易云音乐播放器是一款很“体贴”的音乐播放器它的“个性化推荐” 、“私人FM”功能会根据用户的爱好自动匹配歌曲也是国内音乐播放软件中拥有海量“歌单”的音乐播放器让用户更容易遇见优质音乐。
2QQ音乐播放器
QQ音乐播放器是腾讯公司开发的音乐播放平台是国内正版数字音乐服务的音乐平台领航者有着独特个性的主题风格 以大数据和互联网为推动力始终走在音乐潮流的最前端 同时支持在线播放和本地播放有着千万量级的正版乐库。
3酷狗音乐播放器
酷狗音乐播放器是中国领先的数字音乐交互提供商互联网技术创新的领军企业。
6
北京理工大学珠海学院2020届本科生毕业设计
酷狗音乐主打“听” 、 “看” “唱”三大功能 “听”模块以丰富的曲库为基石 “看”模块配合MV和直播打造 “唱”模块实现在线K歌版块。
1.3本设计中的主要功能模块
在这音乐播放软件的设计中实现的主要功能如下
1.本地音乐的播放控制
2.本地视频的播放控制
3.从搭建本地的服务端中获取网络图片
4.美观的UI布局。
2开发和运行的环境
2. 1开发软件的工具
该音乐播放软件是基于谷歌的Andro id系统早前技术人员使用Ec lip se开发软件后来谷歌宣布停止对搭载Ec lip s e的开发软件的工具更新并推出了功能更加强大、使用更加方便的Android Studio[1] 故本音乐播放软件的开发工具选择Android Studio。
Andro id S tud io是谷歌推出的基于Inte lliJ ID EA的Andro id应用开发集成开发环境并且赋予了很多提升Andro id应用的构建效率的功能,如基于Grad le可以灵活地构建系统、 Intant Run可以实时将变更传入到运行中软件中等 当前播放软件的编译版本、环境如图2.1所示
图2.1当前软件编译环境
2.2软件运行的环境
夜神andro id模拟器是一款国产手机模拟器采用类手机界面视觉设计的P C端桌面软件采用内核技术基于Android 4.4.2版本内核针在电脑上运行深度开发 具有同
7
北京理工大学珠海学院2020届本科生毕业设计
类模拟器中领先运行速度和稳定的性能。相对Ge nymo t io n它更接近真机能够安装一些应用市场的手机软件如果在genymo tio n安装应用需要安装相应的包操作繁杂容易出错。当然夜神模拟器也有不足的地方 即每次启动Andro id Studio和夜神模拟器需要在Windows命令界面中做一些操作如图2.2所示
图2.2连接夜神模拟器的cmd界面命令
3软件功能的实现
3. 1 UI布局模块
3. 1. 1五大页面之间的跳转
该音乐播放软件有五大页面分别是 “发现” 、 “视频” 、 “我的” 、 “视频” 、“账号” 为了提高代码的可复用性以及可扩展性创建了五个Fragme nt,分别对应D isco ve ryFra gme nt、V ideoF ra gme nt、M ineFra gme nt、D ynamic sFra gme nt、Acco untFra gme nt。将这五个Fragme nt加载入Ma inAct ivity中的id为co nta ine r_co nte nt的相对布局中。当点击MainActivity中的导航栏中的某个页面的图标时 co nta iner_co nte nt会加载相应的Fragme nt[] 。
点击切换Fra gme nt的效果的原理是通过Fra gme ntM ana ger调用方法add将五个Frame nt对象加入id为co nta iner_co nte nt的Re lative Layo ut中当点击导航栏中其中一个图标的时候 Fragme ntManger调用hide方法隐藏其它四个Fra gme nt从而显示出导航栏图标对应的Fragme nt。导航逻辑设计如图3.1所示
8
racknerd怎么样?racknerd今天发布了几款美国特价独立服务器的促销,本次商家主推高配置的服务器,各个配置给的都比较高,有Intel和AMD两种,硬盘也有NVMe和SSD等多咱组合可以选择,机房目前有夏洛特、洛杉矶、犹他州可以选择,性价比很高,有需要独服的朋友可以看看。点击进入:racknerd官方网站RackNerd暑假独服促销:CPU:双E5-2680v3 (24核心,48线程)内存...
我们在选择虚拟主机和云服务器的时候,是不是经常有看到有的线路是BGP线路,比如前几天有看到服务商有国际BGP线路和国内BGP线路。这个BGP线路和其他服务线路有什么不同呢?所谓的BGP线路机房,就是在不同的运营商之间通过技术手段时间各个网络的兼容速度最佳,但是IP地址还是一个。正常情况下,我们看到的某个服务商提供的IP地址,在电信和联通移动速度是不同的,有的电信速度不错,有的是移动速度好。但是如果...
老薛主机,虽然是第一次分享这个商家的信息,但是这个商家实际上也有存在有一些年头。看到商家有在进行夏季促销,比如我们很多网友可能有需要的香港VPS主机季度及以上可以半价优惠,如果有在选择不同主机商的香港机房的可以看看老薛主机商家的香港VPS。如果没有记错的话,早年这个商家是主营个人网站虚拟主机业务的,还算不错在异常激烈的市场中生存到现在,应该算是在众多商家中早期积累到一定的用户群的,主打小众个人网站...