音乐播放器项目报告
音乐播放器课程设计报告

课程设计报告之水城攒孽创作课程设计名称:音乐播放器院系:信息工程学院学生姓名:班级:学号:成绩:指导教师:开课时间:2016-2017学年 2 学期音乐播放器一、实践的内容和要求学习WAV格式音频播放原理、数字音频接口及的相关知识。
了解模拟音频信号和数字音频信号的概念。
掌握编写音频播主要内容放器的方法。
实现音频播放,小键盘输入操纵。
本系统要做一个音乐播放器,使用通用定时器定时,用比较输出功能,输出乐谱频率的方波发生声音,对 3 首歌曲编码,其支持 WAV 格式音频播放(上键:暂停;左键:上一首;右键:下一首)。
利用硬件ARM 嵌入式开发平台、用于ARM7TDMI 的 JTAG 仿真器、PC 机 Pentium100开发实现实现音频播放。
主要实现:上一首按键:当点击上一首按键时,当前播放歌曲的上一首歌首被播放。
下一首按键:当点击下一首按键时,当前播放歌曲的下一首歌曲即被播放。
当点击停止键时,当前歌曲即会被停止。
播放界面设计:在歌曲进行播放时,界面应包含所有的按键,而且要歌曲的曲目单。
二、实践原理WAV播放器系统要求能够对mp3、wav格式的音频文件进行解码,处理起来速度是有要求的,尤其是对320Kbps的MP3格式数据流的处理,必须非常快,才干实现MP3的流畅播放,可供选择的八位机有AVR、PIC,可供选择的32位处理器有SAMSUNG、STM32、ATMEL等。
选择MCU优先考虑于拥有丰富的RAM,八位机RAM主要靠扩展,内部RAM一般在4Kbyte以内,32位机里面,SAMSUNG一般不内带RAM,也要外扩。
本实验使用了ARM7处理器,MP3解码可以有两种方法,一是通过ARM处理器软解码,通过对MP3数据格式的解析实现MP3播放,二是通过外部解码芯片直接解码。
第一种方法在解码高码率的MP3时,ARM7处理能力吃紧,而且STM32还需要外部DAC来做音频输出,所以采取第二种方法进行解码。
MP3罕见的解码芯片有VS100X系列和STA01系列,STA01需要外接DAC做音频输出,而VS1003自带DAC,且解码的文件格式包含mp3和wav,另外它还可以实现录音功能,方便以后进行功能的拓展应用。
MP3音乐播放器实验报告

河南科技大学课程设计说明书课程名称面向对象程序课程设计题目MP3仿真程序设计院系电子信息工程学院班级计103 班学生姓名指导教师日期 2013.3.3~2013.3.17课程设计任务书任课教师:时间:2013.3.3课程设计报告文档题目:MP3仿真程序设计一.引言1.编写目的:随着多媒体技术的发展,如何简单方便的播放各类媒体已成为人们普遍关注的问题。
本设计就是基于面向对象技术,利用VC++6.0开发制作一个具有自己设计风格的简单的多媒体MP3播放器。
该播放器是基于MFC集成开发环境,利用MCIWnd类,建立了一个MP3播放器,通过调用这个类的函数来实现MP3播放器的暂停,播放,上一首,下一首,快进等基本功能。
它外观简洁,操作简便,系统资源占用少等功能。
通过MP3仿真程序设计,更加深入了解面向对象的编程。
通过本课程设计,巩固面向对象程序设计的基本概念、原理和技术,学会使用C++语言进行简单程序的开发,将理论与实际相结合,并在此基础上强化了实践意识,提高其实际动手能力和创新能力。
2.定义:HWND m_PreAudio,m_Audio;bool m_IsPaused,m_IsOpened;前两个变量用来存储MCIWndCreate返回的窗口句柄,初始值为NULL;后两者分别用来记录文件的播放与暂停状态,初始值分别为true与false;3.参考资料:1.郑秋生、吴庆涛,《C/C++程序设计》,北京:电子工业出版社2.谭浩强《C++程序设计》,北京:清华大学出版社二.任务的描述1.目标:利用C++编写制作一个MP3播放器。
2.功能描述:实现添加音乐,播放音乐,上一首,下一首,暂停,关闭播放,删除音乐,快进控制,循环播放,背景添加等功能。
3.性能描述(1)数据精确度:各种按钮点击之后1秒内都会触发点击事件,其中快进拖动,反应时间在1—2秒。
(2)时间特性:程序2秒内就可以运行。
功能按钮1秒内触发点击事件。
音乐播放器设计报告

信息与电气工程学院CDIO项目设计说明书(2013 /2014学年第一学期)项目名称:电子信息工程一级项目专业班级:信息(三)班学生姓名:学号:指导教师:设计成绩:2013年12月13日音乐播放器设计报告1.设计1.1设计目的1.为了更好的学习一个系统设计,善于利用所学知识应用到实践中。
2.培养综合运用所学知识独立完成汇编程序。
3.学会分析问题,解决问题能力。
4.可以把软件设计和书本的知识详解,以及对软件设计的实践应用。
1.2设计内容1.通过proteus来设计一个音乐播放器,利用8255A,8253和实现电路的综合连接。
2.根据电路的设计,使用汇编语言来编写音乐播放器的实现代码。
然后通过按键来实现对高低电平的输入和输出,这样就可以在播放器输出音乐的功能。
2.需求分析2.1流程图1.本设计流程是,当需要播放歌曲时,先把程序装入电路中实现电路的控制。
2.当需要播放一首歌曲时,通过电路按键实现控制输入。
2.2发声功能原理本项目的音乐播放器使用8086中央处理器、74LS373地址锁存器、74LS138译码器、可编程定时器/计数器8253和可编程并行接口8255A来实现。
8086中央处理器输出地址/数据码AD0-AD7,将AD0-AD7输入74LS373地址锁存器输出A0-A7,再将A3-A7和A0通过74LS138译码器进行译码输出作为8253和8255A的片选信号,A1和A2作为控制8255A和8253的片内寻址信号;8255A用来控制按键的输入;8253产生不同频率的脉冲来模拟音符,通过时间的长短来模拟音长,从而设计出一个功能完整的音乐播放器。
2.3项目仿真图3.主要设计编程过程3.1定义过程先定义8255A控制地址,然后定义A,B,C靠的地址,再利用根据8253A计时器特点设计计数器地址。
CORT EQU 00F6H ;8255A控制口地址PB_A EQU 00F0H ;8255A的A口地址PB_B EQU 00F2H ;8255A的B口地址PB_C EQU 00F4H ;8255A的C口地址COTR EQU 00FEH ;8253A控制口地址P0 EQU 00F8H ;8253A的计数器0口地址P1 EQU 00FAH ;8253A的计数器1口地址3.1音乐发声频率装入乐曲是按照一定的高低、长短和强弱关系组成的音调,在每一首乐曲中,每个音符的音高和音长与发声系统中的频率、节拍有关。
电子音乐播放器的制作报告

电子音乐播放器的制作报告电子音乐播放器的制作报告电子音乐已经成为了现代社会生活的一部分,人们现在可以通过多种多样的方式来欣赏自己喜欢的音乐,其中最常见的方式便是使用音乐播放器。
作为一款电子产品,音乐播放器的设计与制作必须非常精细,才能满足人们对音乐播放的各种需求。
本文主要介绍了我们小组制作电子音乐播放器的过程和结果。
1.项目背景和目的本项目的背景是,我们小组需要借助这个项目的机会把课程中学到的知识用于实际项目中。
同时,我们希望能够设计一个高性价比的音乐播放器,满足人们对电子产品的需求。
2.需求分析在开始制作之前,我们进行了需求分析,确定了音乐播放器需要满足以下几个方面的要求:(1)数据存储方便:音乐播放器需要能够方便地存储音乐数据,不仅方便用户管理,同时也便于我们的设计。
(2)播放性能好:音乐播放器需要具备稳定的播放性能,播放出来的音质要好。
(3)体积小便携:在保证功能齐全的前提下,音乐播放器需要尽可能的小,便于携带。
(4)操作简单方便:对于一般用户来说,操作简单方便是我们设计音乐播放器的重要考虑。
3.设计在进行设计时,考虑到音乐播放器需要有大量的存储空间,我们使用了SD卡作为存储介质。
同时,我们采用红外遥控器来方便操作。
在音乐播放的技术实现上,我们使用一款STM32单片机来实现。
该单片机具备较强的处理能力,能够满足我们制作一个高级音乐播放器的需求。
4.关键技术4.1 存储方案通过研究市场上各类音乐播放器,我们发现SD卡存储方式是目前最为普遍的方案。
因此,我们设计的音乐播放器也采用了SD卡存储方案。
我们使用SDIO接口与单片机进行连接。
在操作上,我们使用FATFS文件系统来实现SD卡的读取与写入。
4.2 播放器实现在音乐处理方面,我们使用的是STM32内置DAC芯片,实现了音乐的数字信号转模拟信号。
同时,我们采用了WAV格式来作为音乐播放的主要格式。
在操作上,我们使用了I2S接口来与DAC芯片进行连接。
android音乐播放器开题报告

android音乐播放器开题报告Android音乐播放器开题报告一、引言近年来,随着智能手机的普及和移动互联网的发展,人们对于音乐的需求也越来越高。
作为一种重要的娱乐方式,音乐播放器在移动设备上的应用变得越来越重要。
本文将探讨Android音乐播放器的开发,旨在提供一种功能齐全、操作简便的音乐播放器应用。
二、背景随着移动设备的普及,人们越来越倾向于使用智能手机来听音乐。
然而,市面上的音乐播放器应用存在一些问题,如功能不够全面、操作复杂等。
因此,开发一款功能强大、操作简便的Android音乐播放器应用具有重要意义。
三、目标本项目的目标是开发一款Android音乐播放器应用,具有以下特点:1. 功能齐全:能够支持多种音频格式的播放,包括MP3、WAV、FLAC等。
同时,还能够提供歌曲的分类浏览、歌词显示、播放列表管理等功能。
2. 操作简便:用户能够轻松地浏览歌曲、切换播放模式、调节音量等。
同时,还能够提供便捷的搜索功能,使用户能够快速找到自己想听的歌曲。
3. 用户体验优化:通过界面设计和交互方式的优化,提供良好的用户体验。
例如,可以提供自定义主题、背景音乐、睡眠定时等功能,满足用户的个性化需求。
四、开发计划本项目的开发计划如下:1. 需求分析:对用户需求进行深入调研和分析,明确开发目标和功能要求。
2. 技术选型:选择合适的开发语言和框架,如Java和Android Studio。
3. 界面设计:设计直观、美观的用户界面,提高用户体验。
4. 功能开发:根据需求分析,逐步实现各项功能,包括音频播放、歌曲分类、歌词显示等。
5. 测试与优化:对开发的功能进行测试,修复bug并进行性能优化,确保应用的稳定性和流畅性。
6. 发布与推广:将开发完成的应用发布到应用商店,并进行推广,吸引用户下载和使用。
五、预期成果通过本项目的开发,预期将实现以下成果:1. 一款功能齐全、操作简便的Android音乐播放器应用,满足用户对音乐播放的需求。
MusicSpaceII(安卓项目开发报告,简易安卓音乐播放器)

设计:这里用事件监听来实现播放按钮触发播放音乐的事件(其他按钮也是通过事件监听来 实现这个功能的)。 关于java的事件监听: Java中的事件监听是整个Java消息传递的基础和关键。牵涉到两类对象:事件发生者和事件 监听者。事件发生者是事件的起源,它可以是一个按钮,编辑框等。事件监听者就是事件的 接受者,如果要想接收某个事件,它必须对该事件的发生者说一声(即在事件类里面设置一 个XXXListener()函数)。这个过程相当与在事件发生者那儿注册了一下。当事件发生者真 的有事件发生时,就会对所有对该事件注册的所有监听者送一份参考消息(例如:返回一个 参数值)。事件监听者收到后,根据这份消息各自执行各自的功能。参考消息就是java中的 事件对象。 目录 首页
•页面布局(虚拟按键):第一行:显示音乐列表,播放音乐,暂停播放,停止播; 第二列:上一曲,音量减,音量加,下一曲。
界面设计
代码: //第一行按钮 <TableRow android:layout_width="match_parent" android:layout_height="wrap_content" > //显示音乐列表按钮 <ImageButton android:id="@+id/file_list" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:contentDescription="@string/hello_world" android:src="@drawable/wenjiandakai" /> 目录 首页
【VIP专享】MFC简单音乐播放器项目报告

6.培养学生观察、思考、对比及分析综合的能力。过程与方法1.通过观察蚯蚓教的学实难验点,线培形养动观物察和能环力节和动实物验的能主力要;特2征.通。过教对学观方察法到与的教现学象手分段析观与察讨法论、,实对验线法形、动分物组和讨环论节法动教特学征准的备概多括媒,体继课续件培、养活分蚯析蚓、、归硬纳纸、板综、合平的面思玻维璃能、力镊。子情、感烧态杯度、价水值教观1和.通过学理解的蛔1虫.过观适1、察于程3观阅 六蛔寄.内列察读 、虫生出蚯材 让标容生3根常蚓料 学本教活.了 据见身: 生,师的2、解 问的体巩鸟 总看活形作 用蛔 题线的固类 结雌动态业 手虫 自形练与 本雄学、三: 摸对 学动状习人 节蛔生结4、、收 一人 后物和同类 课虫活构请一蚯集 摸体 回并颜步关 重的动、学、蚓鸟 蚯的 答归色学系 点形教生生让在类 蚓危 问纳。习从 并状学理列学平的害 题线蚯四线人 归、意特出四生面体以形蚓、形类 纳大图点常、五观玻存 表及动的鸟请动文 本小引以见引、察璃现 ,预物身类 3学物明 节有言及的、导巩蚯上状 是防的体之生和历 课什根蚯环怎学固蚓和, 干感主是所列环史 学么据蚓节二样生练引牛鸟 燥染要否以举节揭 到不上适动、区回习导皮类 还的特分分蚯动晓 的同节于物让分答。学纸减 是方征节布蚓物起 一,课穴并学蚯课生上少 湿法。?广的教, 些体所居归在生蚓前回运的 润;4泛益学鸟色生纳.靠物完的问答动原 的4蛔,处目类 习和活环.近在成前题蚯的因 ?了虫以。标就 生体的节身其实端并蚓快及 触解寄上知同 物表内特动体结验和总利的慢我 摸蚯生适识人 学有容点物前构并后结用生一国 蚯蚓在于与类 的什,的端中思端线问活样的 蚓人飞技有 基么引进主的的考?形题环吗十 体生行能着 本特出要几变以动,境?大 节活的1密 方征本“特节化下物.让并为珍 近习会形理切 法。课生征有以问的小学引什稀 腹性态解的 。2课物。什游题主.结生出么鸟 面和起结蛔关观题体么戏:要利明蚯?类 处适哪构虫系察:的特的特用确蚓等 ,于些特适。蛔章形殊形征板,这资 是穴疾点于可虫我态结式。书生种料 光居病是寄的们结构,五小物典, 滑生?重生鸟内学构,学、结的型以 还活5要生类部习与.其习巩鸟结的爱 是如原活生结了功颜消固类构线鸟 粗形何因的存构腔能色化练适特形护 糙态预之结的,肠相是系习于点动鸟 ?、防一构现你动适否统。飞都物为结蛔。和状认物应与的行是。主构虫课生却为和”其结的与题、病本理不蛔扁的他构特环以生?8特乐虫形观部特8征境小理三页点观的动位点梳相组等、这;,哪物教相,理适为方引些2鸟,育同师.知应单面导鸟掌类结了;?生识的位学你握日构解2互.。办特生认线益特了通动手征观识形减点它过,抄;察吗动少是们理生报5蛔?物,与的解.参一了虫它和有寄主蛔与份解结们环些生要虫其。蚯构都节已生特对中爱蚓。会动经活征人培鸟与飞物灭相。类养护人吗的绝适这造兴鸟类?主或应节成趣的为要濒的课情关什特临?就危感系么征灭来害教;?;绝学,育,习使。我比学们它生可们理以更解做高养些等成什的良么两好。类卫动生物习。惯根的据重学要生意回义答;的3.情通况过,了给解出蚯课蚓课与题人。类回的答关:系线,形进动行物生和命环科节学动价环值节观动的物教一育、。根教据学蛔重虫点病1.引蛔出虫蛔适虫于这寄种生典生型活的线结形构动和物生。理二特、点设;置2.问蚯题蚓让的学生生活思习考性预和习适。于穴居生活的形态、结构、生理等方面的特征;3.线形动物和环节动物的主要特征。
MFC音乐播放器(实验报告)

音乐播放器大型实验报告通过动手制作基于VC++的音乐播放器,了解播放器的原理。
并通过自己动手,在windows 播放器组件的基础上,用自己的算法,去实现自己的界面和自己的播放模式。
二、总体设计(1)在visual c++环境下设计出一个音乐播放器的界面:具有打开音乐文件、播放歌曲,、暂停或恢复、停止、调节音量大小的功能;(2)修改各个控件的属性,并为其添加消息函数; (3)用媒体控制接口MCI 编程为各个消息函数添加代码; (4)对该音乐播放器编译--运行。
音乐播放器打开文件播放歌曲暂停播放停止播放音量控制(一):创建MFC应用程序框架:打开visual c++软件,选择“文件”—“新建”新建一个应用程序文档MFC AppWizard[exe],将工程命名为MFC音乐播放器,选择合适的保存位置,然后“确定”选择基本对话框,完成设置。
(二)编辑对话框:在工作区内,设计出一个音乐播放器的界面,添加按钮控件:浏览、播放、暂停、停止,添加一个滑动条控件,一个静态文本,两个编辑框。
然后,依次修改各控件的属性:1)右击静态文本,选择属性,将标题改为音乐名称:2)右击编辑框,选择属性,将ID改为IDC_filename3) 右击Button1,选择属性,将ID改为IDC_filechoice,将标题改为浏览3)右击Button2,选择属性,将ID改为IDC_play,将标题改为播放4)右击Button3,选择属性,将ID改为IDC_pause,将标题改为暂停5)右击Button4,选择属性,将ID改为IDC_stop,将标题改为停止6)右击滑块,ID改为IDC_SLIDER单击样式,点[P]:选择顶端/左侧,选择打勾标记。
7)右击编辑框,将ID改为IDC_vol音乐播放器的界面已经设计完毕,为:(三)添加代码1)在头文件处添加#include"Mmsystem.h"#include"Digitalv.h"#pragma comment(lib,"Winmm.lib")2)定义全局变量及成员函数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
华东交通大学课程项目
学院:软件学院 ______
课程名称: Android应用开发___________
项目名称: ___ _音乐播放器________
学生名字: ____ ________
学生班级: ____ ______
授课教师: __________
授课学期:2015___至2016______学年第 2 学期
2016年 6月 1 日
目录
目录 (2)
1、需求分析 (3)
1.1编写目的 (3)
1.2项目背景 (3)
1.3目标 (4)
1.4用户特点 (4)
2、程序设计 (5)
2.1欢迎界面 (5)
2.2主页面 (6)
2.3播放音轨SeekBar (6)
2.4播放调节功能实现 (7)
2.5歌曲列表显示界面 (8)
2.6专辑列表显示界面 (8)
3、功能设计 (9)
4、个人总结 (10)
1、需求分析
1.1编写目的
现今社会生活紧张,而欣赏音乐史其中最好的舒缓压力的方式之一,音乐播放类的软件数不胜数,为什么我还要再写一个播放器出来呢?因为现有的音乐播放器功能实在是有些多了,多未必不好,但是我总想要一个干净纯粹的音乐播放器,只为听歌的播放器,一个有着一些自己想要的功能的播放器,比如“切歌”,一个自己熟悉代码的播放器,甚至,一个可以自定义功能结构的音乐播放器。
本项目的目的是开发一个可以播放主流音乐文件格式的播放器,本设计的实现的这主要功能是播放MP3等音乐文件,并且能够控制播放器播放,暂停,停止,上一曲,下一曲。
界面简单,操作简单。
本软件具备音乐播放器的播放歌曲、歌曲列表、拖动进度等基本功能,同时本播放器界面简洁美观,操作简单便捷。
1.2项目背景
随着智能手机的普及,用户需要各种各样的应用软件,音乐播放器肯定是必不可少的。
随着计算机的广泛运用,手机市场的迅速发展,各种音频资源也在网上广为流传,这些资源卡是平常,但已经渐渐成为人们生活中必不可少的一部分了。
于是各种手机播放器也紧跟着发展起来,但是很多播放器一味最求外观花俏,功能庞大,对用户的手机造成很多资源浪费,比如CPU,内存等的占用率过高,在用户需要多任务操作时,受到不小的影响,带来了许多不便,而对于大多数普通用户,许多功能用不上,形同虚设。
针对以上各种弊端,选择了开发多语种的音频播放器,将各种性能优化,继承播放器的常用功能,满足一般用户听歌的需求。
1.3目标
学习完本周的应用开发课程之后,需要实现以下目标:
可以获取本地音乐
可以显示歌曲的进度
可以用拖动条来控制歌曲的进度
音乐播放器可以循环播放音乐;
可以播放下一首歌曲;
有一个精美的界面;
可以通过手势调节音量;
1.4用户特点
本系统的最终用户是面向广大的拥有手机的用户。
广大用户有各个阶级的,学生,上班族,家长。
主要群体是学生,学生的特点是要求播放的音频潮流,音质高,功能多种多样。
学生基本上会随身携带手机。
上班族工作压力比较大,可以适当的播放音乐缓解压力。
2、程序设计
2.1欢迎界面
欢迎界面模块主要是用于给用户一种友好的体验,让用户较容易接受本软件。
进入系统后进入欢迎界面如图2.1,运用计时器两秒钟后自动跳转到选择进入界面4.2。
并且运用了组合动画实现了渐隐的效果。
2.1欢迎界面
2.2主页面
主页面是本运用的核心界面,本界面拥有三个Fragment,可以运用Activity底部的选项卡进行切换,三个Fragment分别为歌曲列表,正在播放以及专辑列表。
如图4.2所示,此时Activity 上显示的Fragment为正在播放,此页面运用一张炫酷的网络图片。
中间一块专辑及歌曲显示的模块是属于一个自定义模块。
底部为音轨模块。
2.2主页面
2.3播放音轨SeekBar
播放器最重要的一部分就是音轨与歌曲进度同步的实现。
音轨设置了两个TextView用来显示当前歌曲播放的进度时间和歌曲的长度。
音轨对象SeekBar在歌曲刚开始播放的时候调用方法SeekBar.setMax(),参数传入歌曲的长度。
SeekBar.setProgress(1)设置游标的起始进度为1。
Android的线程的开始是通过Handler类来进行的,Handler类是线程与线程之间通信的桥梁,实现Runnable接口会实现里面的run方法,当线程开始的时候,Runnable 中的run方法会向Handler发一个Message消息,这样,Handler类就可以接收到run方法发送过来的不同的消息进行不同的代码处理。
这样就达到了各线程之间的通信。
要启动一个线程调用Handler的方法postDelayed(Runnable,1000)表示线程睡眠时间是1000ms 。
让播放歌曲的线程每隔1000ms,即每1秒对音轨的TextView重新设置时间且让进度条
前进1秒的进度。
对音轨进行刷新。
这样就实现了歌词同步功能SeekBar有一个监听器,该监听器的作用是一直保持着对进度条的监听,当我们用鼠标向SeekBar的各位置进行点击时,它会自动监听其位置,进行相应的位置显示。
这也是进度条上的游标会不停的移动和歌词时间会不停的变动的原因。
2.3播放音轨
2.4播放调节功能实现
各按钮水平放置,从左到右依次是上一首、播放、下一首功能按钮。
用的是布局中的线性布局LinearLayout,;将其设置为水平,如图所示。
LinearLayout中依次放置播放/暂停,上一首、下一首按钮属性。
歌曲专辑图片显示,如果有歌曲图片,才会返回,否则为null,
2.4控制按钮
Android的媒体播放原理:Android源程序已经为我们封装好了一个接口类,叫MediaPlayer。
该接口在执行行需要一个数据源,通过如下步骤:
第一步:MediaPlayer.reset();复位操作,为以后的媒体准备播放作准备。
第二步:传入歌曲数据源,这里也是一个数据MediaPlayer.setDataSource(String path);参数需要传一个路径,该接口类在收到路径后将其转化为数据源。
第三步:准备播放数据源,调用方法MediaPlayer.Prepare()。
第四步:MediaPlayer.Start();播放数据源,该数据源播放后,不再与程序有关,需要用MediaPlayer.Stop()方法让其停止或MediaPlayer.Start();让其启动。
2.5歌曲列表显示界面
歌曲列表整体采用了相对布局(RelativeLayout),中间歌曲列表部分采用的是ListView视图,以确保有大量歌曲时能滚动式容纳所有歌曲,如图2.5所示,背景采用一张炫酷的图片,自定义LIstView,左侧为歌曲图片,中间为歌曲名歌手,最右边为歌曲时长。
歌曲的名称:MediaStore.Audio.Media.TITL
歌曲的歌手名:MediaStore.Audio.Media.ARTIST
歌曲的总播放时长:MediaStore.Audio.Media.DURATION
2.5歌曲列表
2.6专辑列表显示界面
专辑列表采用了网格视图(GridView) 用它能实现视图的网格排列,九宫格视图就是GridVew最典型的使用,GridView是一个AdapterView,所以需要通过适配器来绑定数据,这里使用BaseAdapter。
如图所示用一张网络图片作为背景,GRidView布局自定义,每个item分为两部分,上面为图片,下边为歌曲专辑名。
歌曲的专辑名:MediaStore.Audio.Media.ALBUM
2.6专辑列表
3、功能设计
该系统具有以下主要功能:
1)播放歌曲,显示歌曲名字
2)播放上一首歌和下一首歌
3)播放模式可以是循环的,也以是单曲循环
4)可以通过手势调节歌曲进度
5)可以选取歌曲进行播放
4、个人总结
通过对Android手机平台的音乐播放器的开发,使我对Android系统有了更高层次的了解,Android功能是非常强大的,在这段时间的学习与实践中遇到了很多难题,不过通过网上专门的Android 社区有些开源的代码供参考研究,同时还得到了Android高手的指点,总算给完成了,觉得蛮有意义的。
开发Android音乐播放器,要抓住开发的核心部分,音乐播放器大体由播放主界面、播放列表组成。
这两个个模块完成,音乐播放器就能初具规模。
而其它的功能都是在这两个模块的基础上去补充添加的,这是功能的确是必不可少的功能,否则就不具备音乐播放器的基本功能了。
在开发过程中我学到了一些经验:系统分析的好坏将决定着的系统开发成功与否,一份好分析设计将是成功开发主要因素。
总之,经过这次的Android系统技术知识的学习和对音乐播放器的构思与设计,使我对Android系统有了一定的了解,让我对Android系统上的开发流程和开发模式有了深入的了解,同时也对整个软件产品的实现流程有了一个深入的了解,这对我以后从事软件开发有很大的帮助。