基于Android手机平台的音乐播放器
目录
第一章引言. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 1 -
1.1项目背景. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 1 -
1.2编写目的. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-2-
第二章系统需求分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-3 -
2.1功能需求用例图分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-3 -
2.1.1播放器的基本控制需求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-3-
2.1.2播放清单列表管理需求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-5-
2.1.3播放友好性需求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-7-
2.1.4播放器扩展卡需求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 8-
2.1.5功能需求(时序图)分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-9-
2.2系统结构图和流程图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 10-
2.3系统界面需求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 11 -
2.4系统性能需求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 12-
2.5运行环境需求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 12-
第三章Andro id数据库设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 13 -
3.1数据库及字段属性设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 13-
3.1.1字段设计表、 图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 13-
3.1.2音乐播放器E-R图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 15-
3.2数据库连接. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 15-
3.2.1创建数据库. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 15-
3.2.2操作数据库. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 16-
3.2.3数据显示. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 17-
第四章Andro id项目介绍. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 18-
4.1什么是Andro id. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 18-
4.1.1 Andro id简介. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 18-
4.1.2 Andro id Fe ature s特性. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 18-
4.1.3 Andro id基本框架Andro id Arc hitec ture. . . . . . . . . . . . . . . . . . . . . . .- 19-
4.1.4 Andro id系统的四大组件. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-22-
4.2搭建Andro id开发环境. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-23 -
4.3 Andro id常用工具的使用. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-25-
4.3.1命令行的使用. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-25-
4.3.2 Dalvik Debug Monitor Service(DDMS)的使用. . . . . . . . . . . . . . . . . . .-26-
4.4 Andro id音乐播放器的工程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-26-
4.4.1 Andro id项目. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-26-
4.4.2 Andro id工程程序结构. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-27-
4.4.3 Andro idManifest.xml文件. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-29-
第五章播放器系统功能详细设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 31 -
5.1音乐播放器主界面功能实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 31 -
5.1.1播放器主界面. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-31 -
5.1.2播放界面音轨的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-32-
5.1.3播放器播放、暂停、停止等功能. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-35-
5.2播放列表功能. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 36-
5.3菜单功能. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 38-
5.3.1菜单界面. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-38-
5.3.2菜单功能实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-39-
5.4播放设置界面. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-41 -
5.4.1界面实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-41 -
5.4.2歌词显示实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-42-
5.5手机扩展卡的访问. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-44-
5.5.1文件浏览器界面. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-45-
5.5.2文件浏览器功能实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-46-
5.6数据存储方式. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-47-
5.6.1 SharedPreferences. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-47-
5.6.2 File存储方式. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-48-
5.6.3 SQLiteDatab ase数据库. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-48-
第六章结论. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-49-
摘 要
当今社会的生活节奏越来越快+Android系统上一的款音乐播放器应用程序的设计与实现进行讨论。 Android是一个开源的系统它底层是基于Linux的操作系统本论文的音乐播放器采用了Android开源系统技术利用Java语言和Eclipse编辑工具对播放器进行编写。 同时给出了详细的系统设计过程、部分界面图及主要功能运行流程图本文还对高度过程中遇到的问题和解决方法进行了详细的讨论该音乐播放器集播放、暂停、停止、上一首、下一首、音量调节、歌词显示等功能于一体性能良好在Android系统中能独立运行。该播放器还拥有对手机文件浏览器的访问功能、歌曲播放模式、 以及歌词开闭状态的友好设置.MP3的全名是MPEG Audio Layer-3,是一种声音文件的压缩格式,由于本播放器只限于应用层程序的探讨所以对具体的压缩算法不作深究。
关键词 Android ;开源系统; linux ;音乐播放器
ABSTRACT
The pace of life in today' s society, with more advanced hardwaremobile devices formobile devices, people more andmore is also high,the requirements from the previous pursuit to pursue the visualtechnology, therefore, also gradually improve the systemrequirements, thepapermainly is to take onamusic player fromsystemdesign and realization of the application is discussed. Take thesystem is an open source, it is based on the operating system, usethe Linux music player of the Android open-source system technology,using the Java language and editing tools for players to Eclipse.Presents the detailed design process, the part of the system and themain functions of operation interface diagram of height, this paperalsoflowprocessproblemsandsolvingmethodsare discussed indetail,and the music player episode, pause, stop and a, next, volumeadjustment, lyrics display functions, such as performance is good,can operate independently in the Android system. This player hasaccess to the file browser phone functions, songs and played pattern,open and close condition of friendly words. MP3 Audio MPEG Layer -name is 3, is a kind of sound files compressed format, because theplayers to explore, so the application procedure for specificcompression algorithm not probe
KeyWords Android ; Open source system ; linux ; music player
第一章引言
1. 1项目背景
当今社会的生活节奏越来越快人们对手机的要求也越来越高 由于手机市场发展迅速使得手机操作系统也出现了不同各类现在的市场上主要有三个手机操作系统 Windows mobile symbian 以及谷歌的Android操作系统其中占有开放源代码优势的Android系统有最大的发展前景。那么能否在手机上拥有自己编写的个性音乐播放器呢能的谷歌Android系统就能做到。本文的音乐播放器就是基于谷歌Android手机平台的播放器。
Android是谷歌于2007年公布的开放式源代码手机系统它的开放性就优于其它封闭式的手机系统因此任何人都可能根据自己的喜好将手机系统中的所有功能重新编写。这使得越来越多的人关注这个操作系统。本次作品音乐播放器就是基于Android平台的。
随着计算机的广泛运用手机市场的迅速发展各种音频视频资源也在网上广为流传这些资源看似平常但已经渐渐成为人们生活中必不可少的一部分了。于是各种手机播放器也紧跟着发展起来但是很多播放器一味追求外观花哨功能庞大对用户的手机造成了很多资源浪费 比如CPU内存等的占用率过高在用户需要多任务操作时受到了不小的影响带来了许多不便而对于大多数普通用户许多功能用不上形同虚设。针对以上各种弊端选择了开发多语种的音频视频播放器将各种性能优化继承播放器的常用功能满足一般用户如听歌看电影的需求除了能播放常见格式的语音视频文件高级功能还能播放RMVB格式的视频文件。此外还能支持中文、英文等语言界面。
要研究了各种市场上流行的手机播放器 了解它们各自的插件及编码方式还有各种播放器播放的特别格式文件分析各种编码的优缺点以及各种播放器本身存在的缺陷和特点编写出功能实用使用方便快捷的播放器。目前已经实现的功能有能播放常见音频文件的功能如MP3 WAV等拥有播放菜单能选择播放清单具备一般播放器的功能如快进快退音量调节等。播放模式也比较完善有单曲顺序循环随机播放等模式。
1.2编写目的
现今社会生活紧张而欣赏音乐是其中最好的舒缓压力的方式之一本项目的目的是开发一个可以播放主流音乐文件格式的播放器本设计的实现的这主要功能是播放Mp3 Wav多种格式的音乐文件并且能够控制播放暂停停止上一曲下一曲音量调节视觉外观播放列表和歌曲文件的管理操作等多种播放控制功能界面简明操作简单。
本项目是一款基于Android手机平台的音乐播放器使Android手机拥有个性的多媒体播放器使手机显得更生动灵活化与人们更为接近让手机主人随时随地处于音乐视频的旋律之中。使人们的生活更加多样化。也使设计者更加熟练Android的技术和其它在市场上的特点
第二章系统需求分析
2. 1功能需求用例图分析
根据项目的目标我们可获得项目系统的基本需求以下从不同角度来描述系统的需求并且使用用例图来描述系统的功能需求我们分成四部分来概括即播放器的基本控制需要播放列表管理需求播放器友好性需求和播放器扩展卡需求。 以下分别描述
2. 1. 1播放器的基本控制需求
图2. 1 播放器基本控制图