音乐播放器.docx
- 文档编号:399486
- 上传时间:2022-10-09
- 格式:DOCX
- 页数:30
- 大小:558.44KB
音乐播放器.docx
《音乐播放器.docx》由会员分享,可在线阅读,更多相关《音乐播放器.docx(30页珍藏版)》请在冰豆网上搜索。
软件工程导论课程设计
第1章系统的可行性研究
当今社会的生活节奏越来越快,人们对手机的要求也越来越高,由于手机市场发展迅速,是的手机操作系统也出现了不同各类,现在的市场主要有三个手机操作系统,Windowsmobile,symbian,以及谷歌的Android操作系统,其中占有开发源代码优势的Android系统有最大的发展前景。
那么能否在手机上拥有自己编写的个性音乐播放器呢?
能的,谷歌Android系统就能做到。
本文的音乐播放器就是基于谷歌Android手机平台的播放器。
1.1经济上的可行性
Android 是Google历经数年和投资数亿美元开发出来的智能手机系统,是基于Linux内核的操作系统,是Google公司在2007年11月5日公布的手机操作系统。
随着各大移动终端生产商大力开发和生产基于 Android 的移动智能设备, Android迅速得到业界和社会的认可,并成为整个产业的热点,基于 Android 平台的各类人才逐渐成为各大企业竞相争夺的焦点。
而且 Android 是一个开放的系统,不管是企业还是个人都可以参与来表达自己的创意和想法。
1.2技术上的可行性
Google发起了围绕 Android 的组织——开放手机联盟,其英文全称为“OpenHandsetAlliance”。
它采用了软件堆层(softwarestack,又名以软件叠层)的架构,主要分为三部分。
底层Linux内核只提供基本功能;其他的应用软件则由各公司自行开发,部分程序以Java编写。
1.3操作上的可行性
本系统采用Android框架,可以在eclipse中安装Android开发插件,使用Android模拟器也可以使用任意Android终端。
模拟器和真正的Android手机没有太大区别,人们对手机操作早已熟悉。
综合以上三方面,该系统具有很高的开发可行性,无论是从技术上经济上还是操作上。
故此,可以设计该系统流程图,建立数据字典。
第2章需求分析
软件需求分析工作是软件生存期中重要的一步,也是决定性的一步。
软件需求分析是一个不断认识和逐步细化的过程,该过程将软件计划阶段所确定的软件范围逐步细化到可详细定义的程度。
需求分析还是软件开发的基础,假定在该阶段发现一个错误,解决它需要用一小时的时间,到设计、编程、测试和维护阶段解决,则要花几倍甚至更多的时间。
因此对于复杂系统而言,首先要进行需求分析。
开发人员应该对用户的要求及现实环境进行调查和了解。
2.1软件目标
本系统属于用户常用的音乐播放器。
可以方便用户平时对音乐文件的操作。
本系统应达到以下目标:
(1)软件采用人机交互的方式,界面美观友好,操作灵活、方便、富有个性化。
(2)能够对音乐文件进行有效的管理。
(3)系统应最大限度地实现易维护性和易操作性。
2.2功能需求
功能需求定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足了用户的业务需求。
用户需求文档描述了用户使用产品必须要完成的任务。
针对音乐播放器分别对音乐播放、在线音乐播放及会员特权的换肤等功能进行详细的调研和分析,总结出如下的用户需求信息。
2.2.1功能需求(时序图)分析和结构图
从时序图中可以看出播放器中信息发送和调用过程
主界面
播放列表
播放界面
点击进入按钮
选择歌曲播放
进入播放列表
播放
后台service
Servic
播放页面
发送参数,调用后台service
播放,返回播放界面
2.2.2系统功能表和结构图
功能类别
子功能
子功能
播放列表
播放列表菜单
退出播放
从扩展卡寻找歌曲
歌曲菜单
播放->进入播放界面
删除->数据库同步更新
重命名->数据库同步更新
向上、下移动->数据库同步更新
播放界面
播放
播放歌曲->线程启动->时间更新
暂停
暂停歌曲->线程暂停->时间暂停
停止
停止歌曲->线程停止->时间停止
上一首
播放列表索引变化->寻找上一ID歌曲
下一首
播放列表索引变化->寻找下一ID歌曲
播放界面菜单
返回到播放列表
返回到主菜单
从扩展卡寻找歌曲
退出播放器
隐藏播放界面
主菜单
退出程序
程序退出
进入播放列表
显示播放列表
.主界面
是否显示全
部音乐
播放列表
是否点击要播放的歌曲
音乐播放
程序结束
图2.2.3结构图
第三章总体设计
该音乐播放器的总目标是,实现内存卡内音乐的读取、对音乐播放的基本操作、实现歌词的同步功能、用户友好性操作的实现等,在实现这些功能的基础上要考虑到音乐播放器的UI界面的设计的友好性易操作。
3.1设计原则
系统设计是一个把软件需求转换成用软件系统表示的过程。
通过对目标系统的分析和研究,做出对音乐播放器的整体规划,这是全面开发系统的重要基础。
下面介绍系统功能结构图和流程图。
3.1.1总体设计路线
在Android的开发中界面的设计是很重要的,因为它区别于web的开发。
它的界面小,又要在这么小的界面上竟可能多的去实现功能,所以在UI设计上,组件的摆放问题以及屏幕之间滑动跳转问题都要都是在设计工程中中要考虑到的,其次,Android程序主要应用在手持设备上,不论用户是单手操作还是双手操作,都必须考虑到组件摆放的易操作性,所以要考虑到组件摆放的区域问题,除此之外在UI设计的编写上也要考虑到代码的可更改问题,如果单纯的用XML文件实现,那么在软件的进一步更改开发上可能会遇到很大问题,所以该系统的大部分界面都是通过xml和Java代码共同实现的。
在完成音乐播放器界面的设计后就是功能模块的具体设计了,功能这一块是根具需求来的,有怎么样的需求就对应怎样的功能设计,该音乐播放器所要实现的功能都是通过各个类之间的调用实现的,这样就增加了代码的可读性,对于音乐播放器来说最主要的还是实现音乐播放功能,第一部分就是音乐文件读取、音频文件信息的读取,其次是对音乐的操作,然后就是播放器的个性化设置。
所以要做好也是一件不简单的事情。
3.1.2系统功能结构图
系统主要分为四大模块,歌曲列表模块、歌曲播放模块、专辑列表模块、菜单设置模块,根据设四个模块的命名就可以知道这四个模块的基本功能了,歌曲列表模块就是在程序启动的时候自动扫描并获取添加歌曲到歌曲列表中,然后用户可以对列表内的歌曲进行一些操作,歌曲播放模块不仅要显示正在播放的歌曲信息而且要实现对歌曲的一些基本操作,在播放界面实现了一个类似android的Luncher划屏查看歌词的功能,还有是实现了歌曲图片的一个倒影效果显示,专辑列表模块主要考虑到内存歌曲过多时为方便用户找到自己喜欢的歌手而设置的一个网格列表,当你选种歌曲时它可以对歌曲就行播放。
菜单设置模块呢,主要实现对音乐播放器的个性化设置,满足用户除了听歌曲以外的需求,主要有三个子功能,退出程序、睡眠模式设置、日夜模式设置,在日夜模式设置这块主要就是改变屏幕的明暗度,获取当前系统设置的明暗度,然后对其做改变。
音乐播放器的系统功能结构图(如图3.1所示)
图3.1系统功能结构图
3.1.3系统流程图
音乐播放流程图(如图3.2所示)
图3.2音乐播放流程图
3.2主要功能设计(功能模块介绍)
3.2.1歌曲列表模块
用户启动播放器后进入的界面是歌曲列表界面,歌曲列表主要是自动读取手机内存里的歌曲信息,其中显示的有歌曲图片、歌曲名、演唱者、歌曲总时长,用户通过浏览歌曲列表可以对歌曲进行一些操作,其功能序列图如图3.3所示。
该功能模块实现了以下几个子功能:
a.歌曲的播放
b.手机铃声设置
c.查看歌曲详细信息
图3.3歌曲列表操作序列图
3.2.2音乐播放模块
用户选中要播放的歌曲后跳转到音乐播放界面,音乐播放界面主要显示的有歌曲的信息,以及对音乐操作的按钮,播放、暂停、上一曲、下一
曲、音乐进度条等,用户还可以通过划屏查看歌曲的同步歌词,其功能序列图如图3.4所示。
图3.4歌曲列表操作序列图
3.2.3专辑列表模块
用户点击专辑列表按钮后可以查看内存里所有的歌曲所属专辑,专辑列表主要显示专辑及专辑名、歌手名,选中要播放专辑后点击可以直接跳转到播放界面,对专辑内的歌曲可以进行播放的基本操作。
如图3.5所示。
图3.5专辑列表操作序列图
3.2.4菜单设置模块
菜单里主要是对播放器的设置,以满足用户的个性化需求,但考虑到本系统以简单易操作的前提下,所以用户的个性化设置不易太多。
其功能序列图如图3.5所示。
该功能模块实现了一下几个子功能。
a.退出播放器
b.休眠模式设置
c.日/夜模式设置
d.关于播放器
图3.6菜单设置操作序列图
3.3系统的安全设计
安全性是软件系统永恒的主题,其紧迫程度与功能的可拓展性成正比。
越是可以灵活拓展的系统,越是需要一种强大的安全控制机制。
世界上最安全的系统,就是一坨废铁,因为永远不可能有新功能加入,于是绝对安全。
如果我们可以在其上编写程序,则需要提供一定程度的安全控制,这时程序有好有坏,也有可能出错。
如果我们的软件,会通过互联网这样的渠道可以获得,则这种安全上需求会更强烈,因为各种各样的邪恶用意都有可能存在。
大体上说,安全性控制会有四种需求:
(1)应用程序绝对不能对系统造成破坏。
作为一个系统,它的首要目标当然是共享给运行于其上的应用程序以各种系统级的功能。
但如果这些应用程序,如果可以通过某种渠道对这个共享的系统造成破坏,这样的系统去运行程序就没有意义,因为这时系统过于脆弱。
(2)应用程序之间,最好不能互相干扰。
如果我们的应用程序,互相之间可以破坏对方的数据,则也不会有很好的可用性,因为这时单个的应用程序也还是脆弱的。
(3)应用程序与系统,应用程序之间,应该提供共享的能力。
在安全性机制下,我们也还是需要提供手段,让应用程序与系统层之间、应用程序之间可以交互。
(4)还需要权限控制。
我们可以通过权限来保护系统,一些非法的代码在没有权限的情况就无法造成破坏。
在给不同应用程序提供系统层功能、提供共享时,应用程序有权限才能执行,没有权限则会拒绝应用程序的访问。
在本项目的开发过程中就遇到了应用程序与系统之间的问题,运行程序之后就使整个系统字库奔溃,同时还遇了权限问题,在Android中你想实现什么样的功能就必须给项目赋予什么样的权限,在本项目中需要给项目提供SD卡读写的权限,所以在编写程序的第一步就要考虑到权限问题,不然后面的工作都没法进行。
第四章播放器系统功能详细设计
4.1音乐播放器主界面功能实现
4.1.1播放器主界面
播放器主界面(图4.1)
图4.1
Android的每一个可视化界面,都有其的唯一的布局配置文件,该文件里面有各种布局方式,和各种资源文件如图像,文字,颜色的引用,程序在运行时,可以通过代码对各配置文件进行读取。
这样就可以形成不同的可视化界面和炫丽的效果。
播放器主界面是一个Activity,Android工程在每个activity启动的时候会首先执行Oncreate()方法,如下代码:
@Override
PublicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstance
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 音乐 播放