音乐播放器的详细设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

音乐播放器详细设计

1.引言

随着社会的快速发展,现今社会生活紧张,而欣赏音乐是其中最好的舒缓压力的方式之一,音乐成了我们生活工作中的一个重要的部分。而3G时代的到来,手机移动应用越来越普遍。此文档就是为了能更好地设计出一个基于android系统的音乐播放器而编写的。

1.1 编写目的

为软件的开发者能更好的理解和明确软件开发的详细过程,安排项目与进度、组织软件开发与测试,撰写本文档。本文档供项目组成员,软件开发人员参考。1.2项目背景

本项目由李雪梅、杨挺等人提出,由本组成员联合开发,实现播放现今流行的音乐MP3等文本格式。

该软件是基于Android系统的音乐播放软件,并能够与其他音乐播放软件兼容。

1.3 参考资料

[1] 彭重庆大学出版社《软件工程》“软件计划与可行性分析”

[2] 靳岩、姚尚明人民邮电出版社《Android开发入门与实践》

[3] 可行性分析

[4] 《音乐播放器需求分析书》

[5] 《音乐播放器总体设计说明书》

1.4项目开发计划

实施计划:

在技术方面,编程知识比较缺乏,对有些与项目相关的软件

不熟悉,需进行人员的技术培训(自学为主),技术难点是数据库的构架和软件功能的设计。

2. 总体设计

2.1 项目目的

本项目的目的是开发一个可以播放主流的音乐文本格式的播放器。设计的主要实现功能是播放MP3等格式的音乐文件,并且能控制播放,暂停,停止,音量控制,选择上一曲,选择下一曲,更改皮肤,歌曲列表文件的管理操作,在线播放,读取

存储卡播放等多种播放控制,界面简明,操作简单。

软件系统检测到错误行为时,报告错误,并提示处理操作。

2.2 软件运行环境

硬件:Android操作系统手机

系统软件:Android 2.2 -- 4.0版本

支撑软件:Eclipse 7.5 、ADT 1.5

2.3 需求概述

根据项目,我们可以获得项目系统的基本需求,从功能需求、界面需求、性能需求、可靠性要求四个方面来描述系统的需求,再分别对各个需求进行分析。

2.4 条件与限制

开发人员开发经验严重不足;

编程人员对开发工具不熟悉,编程经验非常有限;

具备运行环境。

2.5 软件结构

3.程序描述

3.1 歌曲界面控制

歌曲界面控制可分为:播放/暂停/停止模块、上一曲/下一曲

模块、音量模块。

3.1.1 播放/暂停/停止模块

流程图:

程序逻辑:

当用户点击播放\暂停\停止按钮时,播放器就对当前播放事件监听从而控制当前音乐的播放\暂停\停止,部分关键代码如下:

//播放按钮

playPauseBtn.setOnClickListener(new OnClickListener() {

public void onClick(View v) {

int cmd = 0;

Intent i = new Intent(MusicService.MUSIC_CONTROL);

//判断当前的状态值是什么状态如果是播放状态if (status == MusicService.STATUS_PLAYING) {

cmd = MusicService.CMD_PAUSE; //发送暂停的命令} else if (status == MusicService.STATUS_STOPPED) { cmd = MusicService.CMD_START; //发送播放的命令

} else {

cmd = MusicService.CMD_RESUME; //继续播放的命令}

i.putExtra("cmd", cmd); //将命令广播出去

sendBroadcast(i); //发送广播

} });

3.1.2 上一曲\下一曲模块

流程图:

程序逻辑:

当用户点击上一曲\下一曲按钮时,播放器就对当前播放事

件监听,从音乐列表中转换音乐,从而控制当前音乐的上一曲\ 下一曲,关键代码如下:

//上一曲键事件监听器

previousBtn.setOnClickListener (new OnClickListener() {

public void onClick(View v) {

Intent i = new Intent(MusicService.MUSIC_CONTROL);

int cmd = MusicService.CMD_PREV;//发送前一首的命令

i.putExtra("cmd", cmd); sendBroadcast(i);

}

});

// 下一曲键事件监听器

nextBtn.setOnClickListener(new OnClickListener() {

public void onClick(View v) {

Intent i = new Intent(MusicService.MUSIC_CONTROL);

int cmd = MusicService.CMD_NEXT;

i.putExtra("cmd", cmd);

sendBroadcast(i);

}

});

//设置SeekBar的监听事件

sb.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { //当停止拖动时调用的方法

相关文档
最新文档