当前位置:文档之家› 毕业设计开题调研报告

毕业设计开题调研报告

齐齐哈尔大学毕业设计调研报告题目:基于android的音乐播放器的设计学院:通信与电子工程学院班级:通信091班姓名:田浩学号:2009132100 指导教师:赵岩日期:2012.3.20基于android的音乐播放器的设计调研报告1.调研的基本情况调研时间:2012年3月1日—2012年3月20日调研途径:网上查询相关资料并翻阅有关书籍调研目的和意义:随着科技的进步,手机的功能也不断的得到丰富,从最早的“大哥大”到现在的商务PDA手机,智能手机,音乐手机等等,功能也从单纯的打电话发展到了发短信,听歌,上网....手机和我们生活的联系越来越紧密,手机的功能也是很多人们关注的焦点。

目前手机的音乐播放功能已经是大家比较关注的一个部分了,不少在人在购买手机的时候都会关心手机的音乐播放的能力,这也足以看出目前大家对音乐播放功能的重视,所以一款性能良好的手机音乐播放器软件一定会受到欢迎。

和传统的音乐播放器相比,手机播放音乐更加的容易携带,其他方面也都不输于传统音乐播放器,而且还具有网上听音乐功能,所以开发一款受欢迎的手机音乐播放软件是具有良好的市场和应用前景的。

一款专业的音乐播放软件是手机中必不可少的要素,几乎市场上所有的手机都拥有一个自带的音乐播放软件,通过软件可以对音乐欣赏中一些必要的元素进行人性化的设置,同时在操作的时候也能得到一定的便利,但是不能满足用户的所有要求,所以网上就出现了各种各样的手机音乐播放软件,来满足不同用户的不同要求。

不同手机平台的手机,所支持的音乐播放软件也是各不相同,而现在最流行的手机平台就是google的android手机平台,所以本课题就致力于开发出一款基于android手机平台的音乐播放器,来满足用户的使用需求。

课题研究的国内外现状:传统的音乐播放器受限于手机存储和计算处理能力,在音乐收集、存储和管理方面一直存在瓶颈,新一代音乐播放器应该进一步拓展了应用空间,更迎合用户的使用习惯,将音乐搜索、收藏、管理等全部交由网络来完成,为用户提供的音乐资源更为庞大,搜索更为精准,管理和收藏更为简便的服务。

智能化超级搜索、智能化口味分析、本地收藏和管理音乐文件都是下一代音乐播放器应该具有的功能,只有音乐播放器客户端软件的不断创新发展,未来人们欣赏音乐的体验才会更加精彩。

2.调研报告的内容2.1 什么是androidAndroid一词的本义指“机器人”,同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。

目前最好的是Android2.0的摩托罗拉DroidAndroid是基于Linux内核的软件平台和操作系统,早期由Google开发(在华注册商标名为“安致”),后由开放手机联盟(Open Handset Alliance)开发。

它采用了软件堆层(software stack,又名以软件叠层)的架构,主要分为三部分。

低层以Linux内核工作为基础,只提供基本功能;其他的应用软件则由各公司自行开发,以Java作为编写程序的一部分。

另外,为了推广此技术,Google和其它几十个手机公司建立了开放手机联盟。

Android在未公开之前常被传闻为Google电话或gPhone。

大多传闻认为Google开发的是自己的手机电话产品,而不是一套软件平台。

到了2010年1月,Google 开始发表自家品牌手机电话的Nexus One。

目前最新SDK版本为Android 4.1。

2.2Android基本框架(Android Architecture)(1) ApplicationsApplication Android会同一个核心应用程序包一起发布,该应用程序包包括email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。

所有的应用程序都是用JAVA编写的。

(2) Application FrameWork开发者完全可以访问核心应用程序所使用的API框架。

该应用程序架构用来简化组件软件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。

该应用程序重用机制使得组建可以被用户替换。

所有的应用程序都由一系列的服务和系统组成,包括:可扩展的视图(Views )、内容管理器(Content Providers )、资源管理器(Resource Manager)、通知管理器(Notification Manager)、活动类管理器(Activity Manager)。

(3) Libraries库Android 包括一个被 Android 系统中各种不同组件所使用的 C/C++ 库集。

该库通过 Android 应用程序框架为开发者提供服务。

以下是一些主要的核心库:系统 C 库- 一个从 BSD 继承来的标准 C 系统函数库( libc ),专门为基于embedded linux 的设备定制。

媒体库- 基于 PacketVideo OpenCORE;该库支持录放,并且可以录制许多流行的音频视频格式,还有静态印像文件包括MPEG4, H.264, MP3, AAC, AMR, JPG, PNG。

Surface Manager - 对显示子系统的管理,并且为多个应用程序提供2D和3D图层的无缝融合。

LibWebCore - 一个最新的web浏览器引擎用来支持Android浏览器和一个可嵌入的web视图。

SGL - 一个内置的2D图形引擎 3D libraries - 基于OpenGL ES 1.0 APIs实现;该库可以使用硬件3D加速(如果可用)或者使用高度优化的3D软加速。

FreeType - 位图(bitmap)和向量(vector)字体显示。

SQLite 一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎。

(4) Android RuntimeAndroid 包括了一个核心库,该核心库提供了JAVA编程语言核心库的大多数功能。

每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。

Dalvik是针对于同时高效地运行多个VMs来实现的。

Dalvik 虚拟机执行.dex的Dalvik可执行文件,该格式文件针对最小内存使用做了优化。

该虚拟机是基于寄存器的,所有的类都经由JAVA汇编器编译,然后通过SDK中的dx工具转化成.dex格式由虚拟机执行。

Dalvik虚拟机依赖于linux的一些功能,比如线程机制和底层内存管理机制。

(5) Linux内核Android 的核心系统服务依赖于 Linux 2.6 内核,如安全性,内存管理,进程管理,网络协议栈和驱动模型。

Linux 内核也同时作为硬件和软件堆栈之间的硬件抽象层。

2.3 Android系统的四大组件在Android系统中,为我们提供了四大基本组件,每个组件是一个视图,但是有些是可见的,有些是不可见的视图,像Activity,ContentProvider是可见的视图,Service和BroadcastReceiver是不可见的,它们只在系统的后台运行。

下面分别介绍四大组件:(1)Activity 简介在Android系统中Activity提供可视化的用户界面,一个Android应用通常由多个Activity组成。

多个Activity组成了Activity栈(Stack),当前活动的Activity处于栈顶。

Activity有自己的生命周期,由Android系统来控制。

(2)Service 简介顾名思义Service就是运行在后台的一种服务程序,一般很少和用户交互,因此没有可视化界面定义一个Service类比较简单,只要继承Service类,实现其生命周期中的方法就可以了。

一个定义好的Service必须在AndroidManifest.xml配置文件注册,通过<service>元素声明才能使用.Service 有自己的生命周期,我们可以调用startService()启动一个Service或者bindService()方法来绑定一个存在的Service。

(3)Broadcast Receiver 简介Broadcast Receiver 顾名思义广播接收器,它和事件处理机制类似,只不过事件处理机制是程序组件级别的(例如,某个按钮的单击事件),而广播事件处理机制是系统级别的。

到目前为止我们可以使用Intent来启动一个程序组件,我们还可以通过使用sendBroadcast()方法来发起一个系统级别的事件广播来传递消息。

我们可以在你的应用程序中实现Broadcast Receiver来监听和响应这些广播的Intent。

(4)ContentProvider简介Content Provider 用来保存和检索数据,并且使应用程序之间相互访问数据成为可能。

它是跨应用程序共享数据的唯一方法。

Android 为常用的数据类型(如:音视频、图片和联系方式等)提供了大量的Content Provider。

它们被定义在android.provider包下面。

通过这样定义好的ContentProvider 我们可以方便的进行数据操作。

当然我们必须拥有适当的权限。

我们也可以自己来定ContentProvider共享我们的数据,方便用户的访问。

2.4 Android播放器的设计概要(1)此音乐播放器是基于android平台下的,能够实现音乐的播放、暂停、快进、快退、上一曲、下一曲、声音控制、播放列表,播放时间以及播放列表。

通过播放列表,用户可以选择播放的音乐,播放器也可以显示该音乐的歌曲名、专辑、歌手以及歌曲的播放总时间,播放进度等歌曲的相关功能;用户还可以通过音乐增减按钮调节声音大小,还可以选择循环播放和顺序播放;该音乐播放器能够将将sd卡中的MP3格式的音乐文件进行查找和播放;用户可以通过系统帮助退出系统、更新播放列表、设置、帮助等功能。

只要掌握了这几部分的开发,音乐播放器就能初具规模。

而其它的功能都是在这些功能的基础上去补充添加的,但是这是功能的确是必不可少的功能,否则就不能算是音乐播放器了。

(2) 音乐播放器系统实现了播放器的基本功能:播放,暂停、停止、上/下一首、音量调节、歌词显示、播放模式、歌曲搜索、文件浏览器、播放列表查询等功能。

运用的系统平台是现今最热门的Android系统,是一个开源的基于Linux 系统的手机平台。

是以Java语言编写+SQLite数据库支持+SharePreference配置文件的组合方式进行数据管理。

实现了音乐播放器的系统编程(3) 本次程序设计,对播放器的系统结构框架做了精心的构思与设计,采用主要开发工具是Eclipse+Java语言的支持,Android Development Tool的插件,和Android SDK2.1版本的全面结合,才使整个音乐播放器系统得以实现。

相关主题