1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > Android音乐播放器的设计与实现

Android音乐播放器的设计与实现

时间:2023-03-21 23:31:45

相关推荐

Android音乐播放器的设计与实现

课程设计报告

实习名称 课程设计2

设计题目 Android音乐播放器的设计与实现

目录

摘要11

1 引言22

2 可行性分析22

2.1 技术可行性22

2.2 经济可行性33

2.3 管理可行性33

2.4 可行性分析结论33

3 系统需求分析44

3.1 功能分析44

3.2 数据流程分析44

4 系统功能设计66

4.1 播放器功能结构66

4.1.1 播放器主界面功能模块66

4.1.2 播放器菜单功能模块77

4.2 播放器功能流程77

5 系统实现88

5.1 播放器主界面功能列表88

5.2 播放器基本功能的实现1111

5.3 播放列表的实现1212

6 软件测试与验证1313

6.1 软件测试的目的1313

6.2 软件测试的方法1313

6.3 软件测试环境1414

6.3.1 android模拟器1414

6.3.2 真机测试1414

6.4 软件测试流程与结果评估1414

6.4.1 测试流程1414

6.4.2 结果评估1515

6.5 本章小结1616

7 总结1616

参考文献1818

Android音乐播放器的设计与实现

(德州学院 信息管理学院,山东德州 253023)

摘要:本文主要介绍了一个基于Andriod的音乐播放器的设计与实现。主要包括可行性分析,需求分析,App功能设计及实现。本次课程设计选择了开发Android音乐播放器(以下简称播放器),主要是因为音乐播放器涉及的Android基础知识比较广,本次的开发过程中主要设计到Service、网络数据传输、Handle消息机制、多线程、Sqllite数据存储。在本次音乐播放器的设计与实现中,我们小组进行了明确的分工,在代码的编写过程中,我们使用了SVN工具,大大节省了在代码整合上花费的时间。

关键字:Andriod;智能手机;音乐播放器;SVN

1 引言

在软件设计之前,首先对 android 底层架构方面的资料进行了大量研究,并对目前市场上的各类音乐软件进行了分析,以此为基础对用户的需求进行了详细分析,然后根据分析结果对整个软件的架构及功能模块进行了设计,在UI方面做了个性化的设计,提高用户和播放器的互动性,另外软件的功能中还加入了较多的人性化功能,比如来去电自动暂停功能、利用进度条自由控制音乐播放进度等。本软件基于 Android 架构进行实现,主要实现了个性化设置、播放控制等多个功能模块。软件实现过程中,笔者首先利用 Eclipse 软件构建了Android开发环境,采用Java语言进行编写,在代码编写完成后,对软件的功能性及性能进行了模块测试,并对测试过程中发现的 BUG 进行了修正和优化调整。最终通过实机测试,确定该软件具有体积小、可移植性强、可扩展性强、对终端设备配置要求低等优点,适用于大范围的高中低档Android手机用户,而且能够保持长时间的稳定运行状态。

据国外媒体报道, IDC(互联网数据中心)周二发布了智能手机出货量数据,采用Android和iOS操作系统的智能手机出货量占全部智能机出货量的96.3%。其中Android出货量为10.59亿部,同比增长32%;市场份额为81.5%,去年同期为78.7%。iPhone出货量为1.927亿部,同比去年增长25.6%;市场份额为14.8%, 去年同期为15.1%。这表明谷歌的Android操作系统仍明显领先于其他的手机操作系统。

2 可行性分析

2.1 技术可行性

先进性

本次APP的开发使用了模块化开发的方式,这种开发方式解决软件的复杂性问题,或说降低软件的复杂性。不至于随着项目变大而不可控而失败,使其可控,可维护,可扩展。

可靠性

本APP的功能比较的单一,但是仍然不能忽略可靠性问题,不会有用户会喜欢一个经常崩溃的应用程序。在本APP的设计中,我们尽量降低代码的冗余度,尽量对代码进行抽象,封装和捕捉异常。

2.2 经济可行性

可维护性

系统设计应标准化、规范化,按照分层设计,软件构件化实现。按照类型进行组织代码,对代码进行分层,主要体现在对代码的包结构进行设计,相同功能的类放在同一包中。

可拓展性

想要拓展APP的功能,就要做好核心控制组件的设计。本APP以Service为核心开发的,可以通过调用Service中的方法进行功能的调用,Service中应设计出接口,方便以后功能的扩展。

2.3 管理可行性

实用性

考虑到要尽量满足业务功能需求的前提下,又要适应各业务角色的工作特点,该系统做到简单、实用、人性化,实现了验证身份和资源管理、分级内容管理和内容定制。

开放性

在系统构架、采用技术、选用平台方面都有较好的开放性。特别是在选择产品上,我们采用符合开放性要求,遵循国际标准化组织的技术标准,我们的产品既有自己的独特优势,又能与其他多家优秀的产品进行组合,共同构成一个开放的、易扩充的、稳定的、统一软件的系统。

2.4 可行性分析结论

应用系统从技术层面具有先进性和可靠性,经济方面具有可维护性、可伸缩性和可移植性,管理层面具有实用性和开放性,体现了该系统的可行性,似的用户在使用系统时更方便快捷,可靠稳定。

3 系统需求分析

3.1 功能分析

根据用户的普遍需求,本APP主要实现的功能有:本地文件的搜索、播放列表的生成、音频的基本播放控制、播放器个性化定制图片切换、音频处理设置的实现、开始界面的动画效果、电话异常的处理。

3.2 数据流程分析

根据该项目的设计目标,对产品进行场景化推导出项目系统的基本需求,从不同角度来描述系统的需求,同时使用用例图来描述软件的功能需求。本小节从本地文件的搜索,播放列表的生成,音频的基本播放控制需求,播放器个性化定制图片切换,音频处理设置的实现,开始界面的动画效果,电话异常的处理等八个部分来概括。在该部分的分析描述中,结合UML统一建模语言进行必要的图形化分析。

图 数据流图

(1)本地文件搜索

音频文件通常存储于移动设备的本地SD卡中,音乐播放器需要实现查询SD卡中音频文件的随心播放,这也是音乐播放器的设计初衷。播放本地音乐可以不受网路条件的限制,同时还能够有效节约网络流量的消耗。

(2)音频的基本控制需求

音频的基本播放控制是整个音乐播放器的核心功能,因此,其设计至关重要。在打开音乐播放器之后,首先就使用户能够明显地看到屏幕的播放按钮,方便进行音乐播放。同时播放按钮能够在播放与暂停两个功能之间进行切换,这样既能保证为用户提供丰富的功能,又能保证界面的简洁。另外根据用户需要可以随时点击任意曲目进行播放,如果用户不做选择将自动播放下一曲目。当前音乐的播放进度条是可以任意拖放的,也就是可以选择任意位置开始播放音乐,使用户能够通过触摸滑动及点击的错做方式对播放进度条进行自由控制。

(3)播放列表的生成

播放列表的功能在于为用户对本地音乐文件的管理提供方便。当用户第一次启动播放器时,软件自动查找音乐素材,形成播放列表排列于界面中,下一次播放音乐时就无须重新查找,可以直接调用当前的播放列表进行播放。

(4)播放器个性化定制图片切换

播放视觉模式的切换并非播放器的必要功能,但为了给用户带来更高的视觉体验,播放器视觉效果的切换功能必不可少。 用户通过点击菜单按钮进入菜单选项,然后点击设置界面可以获得用户 SD 卡中原有图片或照片,用户可以选择设置为当前界面,更换自己喜欢的图片。

(5)音频处理设置的实现

音量设置是通过设置界面进行的,可以设定当前播放音乐的音量高低。

(6)开始界面的动画效果

采用淡出方式消隐开始画面,出现播放界面,给人清新舒适的感觉。 应用程序窗口小部件AppWidgets,是微小的应用程序视图。它可以被嵌入到其他程序中并接收周期性的更新。

4 系统功能设计

4.1 播放器功能结构

4.1.1 播放器主界面功能模块

播放器的主界面主要是指用户在进入播放器之后最先出现在用户眼中的界面,该界面上通常需要具备一些简单的操作按钮。

1)歌曲切换

通过该功能,用户能够实现对歌曲的切换操作,切换到当前歌曲的上一首或下一首进行播放,如果只有一首歌曲时,该功能键将失去作用。

2)本地音乐自动搜索

用户通过该功能能够快速搜索移动设备本地存储中的音频文件。通过歌曲名或者相关信息的关键字对本地音频文件进行搜索。在查找到歌曲后可以直接对该歌曲进行播放、管理以及添加到列表等操作。该功能的设计目的是为了方便用户对本地音频文件进行快速搜索定位。

3)播放进度条的显示与控制

通过播放进度条能够较为直观的将当前曲目的播放进度信息展示给用户。利用播放进度条显示当前歌曲的播放状态,从而也使播放器的 UI 设计更加简洁。同时,还能对该播放进度条进行触摸控制,大大提高了用户的操作效率。

4)音乐播放的控制

通过音乐播放控制按钮能够实现对当前播放曲目的控制,主要包括播放、暂停、停止等操作。这些按钮的加入,也保持了播放器UI设计的简约风格。

4.1.2 播放器菜单功能模块

菜单功能按钮是指用户在进入播放器主界面后,点击手机菜单按钮时弹出来的功能列表,功能列表中目前只设定简单的功能选择项,但是已经提供了增加选项的接口,可以为用户提供更多的功能定制。

设置选项将转到设置界面,提供用户摇一摇换歌和更新的设置。

4.2 播放器功能流程

在完成对播放器的主界面功能模块以及菜单功能模块的设计之后,需要对播放器的功能进行设计,它决定了用户操作流程的体验度。优秀的音乐播放器并不是依靠单纯的功能叠加而成的,而是需要通过对用户的需求就行研究,实现用户满意的功能流程,让用户获得更高的操作体验。具体流程如下:

(1)启动播放器;

(2)进入播放器后,播放器自动加载本地音频文件;

(3)若播放列表中存在文件信息,且文件源文件存在则进行歌曲播放;

(4)若播放列表为空,则可以利用功能菜单进行本地歌曲添加,然后返回播放界面进行歌曲播放;

(5)在播放音乐的过程中,可以对播放歌曲的相关信息进行查看并进行播放控制的操作;

(6)用户可以利用歌曲的关键信息结合软件提供的搜索功能对本地存储中的音乐进行快速搜索,并对搜索结果进行管理;

(7)用户可以通过菜单按钮进入软件的而功能菜单列表,并对这些功能进行操作;

(8)通过点击暂停按钮可以停止当前歌曲的播放,在暂停状态下,用户通过点击设备返回按钮,可以退出播放器程序。

图 4.2 播放器功能流程图

5 系统实现

5.1 播放器主界面功能列表

根据前文中对音乐播放器功能结构的分析以及对主界面功能的简单分析。在对功能模块进行设计的基础上使用DroidDraw工具编码出XML文件并导入Android ADT中能够得到如下结果。

(1)UI设计

播放器的主要色调采用浅蓝色作为背景底色,各个按钮使用深色,整体风格显得更加舒适并附有强烈的时尚气息。播放器主界面功能列表主要包括基本控制功能按钮(播放、暂停、切歌等)、搜索按钮、播放列表按钮以及播放主信息显示区域。

(2)核心代码:

具体的主界面实现核心代码如下:

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

switch (v.getId()) {

case R.id.iv_play:

if(state==State.Paused){

startService(new Intent(MusicService.ACTION_PLAY));

iv_play.setImageResource(R.drawable.cf_open);

state=State.Playing;

}else{

startService(new Intent(MusicService.ACTION_PAUSE));

iv_play.setImageResource(R.drawable.cf_close);

state=State

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。