音乐播放器作文
我有一台音乐播放器,我非常喜欢它,给它取名为小白。这是我的一位好朋友送给我的。小白穿着一身漂亮的“白衬衫”还配着一条黑色的漂亮“短裙子”,再配上优美的音乐,简直就是个小姑娘在翩翩起舞。小白是一个不太规则的长方体,其中,它长7厘米,宽4厘米,厚一厘米左右。小白身上有六个按钮,它们分别是:开关按钮、确定按钮、待机按钮、上翻按钮、播放按钮以及下翻按钮,在播放按钮正上方有一个小正方形,上面还有许多小洞洞,我想那应该是发音的吧!小白和一枚鸡蛋比起来,可轻多了,它可以带在身上,不像那些录音机这么大,这么重。
小白不但外形漂亮,而且我和它在生活中还是一对儿形影不离的好朋友呢!每当我孤独、寂寞的时候,小白总是陪伴我;每当我高兴时,我不仅和家人分享快乐,我还和小白一起分享快乐。小白也需要我,有的时候,小白没电了,它都会响起“嘟嘟”的警告声,似乎在说“小主人,我的肚子饿了,快给我吃饭。”有的时候,小白的“裙子”脏了,我都会去拿点儿纸巾,擦去“裙子”的脏痕,它变得非常漂亮,我真是越来越喜欢它了。
小白还有许多的功能呢!里面有一个音乐播放器,我偶尔会下载一些歌曲,仿佛给小白增添了几件新衣裳。考试之前,我总要听上一两首优美的歌曲,放松一下紧张的心情。小白里面还有电影播放,我无聊时,我都看一些有趣的电影,这样就可以解闷了。里面还有录音,我每天都会录音,长大后,我就可以细细的回味小时候的趣事了。小白里面还有一个电子书,有许多书籍我都可以在电子书里找呢!小白真是无所不能呀!我爱你,小白!
音乐播放器设计文档
在 android平台上开发音乐播放器是一个全新的挑战。这次通过 android QQ music 项目实战,总结出一些方法和经验,希望能够对移动平台的设计尤其是多媒体这块提供一些有价值的参考和帮助。1.1 项目背景
当今社会的生活节奏越来越快,人们对手机的要求也越来越高,由于手机市场发展迅速,使得手机操作系统也出现了不同各类,现在的市场上主要有三个手机操作系统,Windows mobile,symbian,以及谷歌的Android操作系统,其中占有开放源代码优势的Android系统有最大的发展前景。那么能否在手机上拥有自己编写的个性音乐播放器呢?能的,谷歌Android系统就能做到。本文的音乐播放器就是基于谷歌Android手机平台的播放器。
Android:是谷歌于2007年公布的开放式源代码手机系统,它的开放性就优于其它封闭式的手机系统,因此,任何人都可能根据自己的喜好将手机系统中的所有功能重新编写。这使得越来越多的人关注这个操作系统。本次作品音乐播放器就是基于Android平台的。
随着计算机的广泛运用,手机市场的迅速发展,各种音频视频资源也在网上广为流传,这些资源看似平常,但已经渐渐成为人们生活中必不可少的一部分了。于是各种手机播放器也紧跟着发展起来,但是很多播放器一味追求外观花哨,功能庞大,对用户的手机造成了很多资源浪费,比如CPU,内存等的占用率过高,在用户需要多任务操作时,受到了不小的影响,带来了许多不便,而对于大多数普通用户,许多功能用不上,形同虚设。针对以上各种弊端,选择了开发多语种的音频视频播放器,将各种性能优化,继承播放器的常用功能,满足一般用户(如听歌,看电影)的需求,除了能播放常见格式的语音视频文件,高级功能:还能播放RMVB格式的视频文件。此外,还能支持中文、英文等语言界面。要研究了各种市场上流行的手机播放器,了解它们各自的插件及编码方式,还有各种播放器播放的特别格式文件,分析各种编码的优缺点以及各种播放器本身存在的缺陷和特点,编写出功能实用,使用方便快捷的播放器。目前已经实现的功能有能播放常见音频文件的功能,如MP3,WAV,等,拥有播放菜单,能选择播放清单,具备一般播放器的功能,如快进,快退,音量调节等。播放模式也比较完善,有单曲,顺序,循环,随机播放等模式。
一、引入产品定义描述(Application
Definition Statement)
相信大多数设计师都有过这样的经历:在产品设计过程中,设计师和产品经理不断 pk,各抒己见,甚至闹得脸红
耳赤、拍桌翻脸,最后项目总结时又因达不到“理想目标“双方深深自责,纷纷表示”缺少交流“。彼此不断 pk,交流
绝对足够,只是我们缺少有效沟通的工具。如果能在早期建立共识,口水仗爆发的频率就会越少,真正花在产品上 的时间也就越多。这一次,我们决定更早地切入,在最开始的产品规划层面,引入“产品定义描述”(关于
ap-plicationdefinition statement,请参考《iPhone Human Interface Guidelines》)。
注意:
ADS 的定义也是一个迭代的过程,外部环境的变化、后续过程产生的问题,都可能对原 ADS 产生影响,需
要重新评估、修正,甚至否定再来,但无论如何,必须确保整个团队对 ADS 有一个共同的认识。
二、细分场景,从场景推导需求,从需求推导设计
从源头的战略层面上建立了统一的认知,我们接下来开展的工作就有根据了。既然核心是解决“移动场景听歌“的问
题,我们必须首先弄清楚什么是”移动场景“?移动环境和 PC 环境差异甚大,碎片时间的使用更为突出。用户一天
是怎么活动的呢?每次拿起手机听音乐都是什么时间?上班的公车上、走路、晚上睡觉前?在这些点上用户都会做
些什么?简单的脑暴可以罗列各个可能的使用场景,但还比较粗糙。场景的构想需要建立在高度的认知上,这时候
用研的切入显得相当关键,用户特征、喜好、使用习惯…对用户越了解,场景就越能贴近真实、越能发现更多的细
节。这些都为后续的设计决策提供了有力的依据
客观构建的场景有很多有意思的发现,比如用户在播放本地歌曲时,挑选第一首歌往往比较犹豫,但对后续播放的
歌曲却不太在意。从场景仔细分析和推敲,很容易就可以明确产品的需求,对应上述的发现,推导如下需求:为用
户提供“马上听歌”按钮引导用户直接听歌。需求的推导因为有用研的切入,避免了太多的个人情感因素。
三、敏捷原型设计,适应与借鉴并行
用研的输出以及前面的 ADS 定义为功能筛选和设计取舍提供了强有力的决策依据。在需求框架大致决定的时候,我们接下来就进行方案设计了。正所谓“一图胜千言”,原型有时候会比面面俱到的文档更直观。不同的阶段,我们
会进行不同精度的原型设计:
在原型迭代的过程中,需要注意 android平台的 UI 尴尬。与其他平台(iPhone、symbian、windows mobile)不同,an-droid 更加开放,不同的厂商不同的 ROM 版本界面规范并不统一。如果简单地将其他平台的设计规范移植过来,产品体验可能会和整个系统“格格不入”。借鉴了 android平台的一些优秀 app(比如 twitter 和 new york times)的
设计策略,我们决定“适应与借鉴并行“:在大的基础体验上,保证与系统体验一致,尊重平台使用习惯;在细节体
验上,尽量克服系统的操作困难,保证局部体验的流畅。
四、视觉方案
在整个设计过程中,我们尝试了多套风格方案,比如“梦幻光影”、“清爽夏日”、“木质桌面”“蓝色海洋”等等,由于
beta1 开发时间有限,最后选择了偏深绿色主色调的“梦幻光影”作为默认皮肤,这里奉上其他未曾谋面的方案,供 参考。
4.1 主要界面模块划分
视觉方案的第一步是对界面各模块和控件进行作出符合审美原理和需要的的合理划分和尺寸设定,这里重点会落在
正在播放界面和歌曲列表界面两块,虽然两个界面功能和承载的信息都不相同,但是在造作上两个界面跳转和切换
是紧密关联的,在各模块划分和空间比例上两个需要统筹安排,一方面考虑上下同样尺寸的“标题行”和底部“控制行
/ tab 行”一方面要考虑歌曲列表界面的列表选择合适的行高和行数。在保证每一行歌曲信息能够有足够的空间显示
整个界
从上图区域划分和比例可以看出,播放器界面,封面/歌手图片的中心点在整个界面的高度是 296,相对于面的高 480,这一比例基本是处在 0.618:1 的黄金分隔点上。4.2 正在播放界面
用户使用音乐播放器,最大的关注点一般会落在正在播放/播放器界面上,这块在视觉上是整个产品的核心区域,在很大程度上代表了整款软件的品质、品位和风格信息表达。而专辑封面/歌手头像又是正在播放界面的视觉中心,因此这块在设计上花了比较重的笔墨,用细腻的光照效果与晶莹剔透的质感精心营造了一种符合我们 QQ 音乐在手
机移动操作平台上的气质的效果。
4.3 系统菜单 icon
菜单选项 icon 是另外一个视觉信息传达比较重要的地方,对整体风格的形成起着重要作用,这里做了两种效果的
尝试,一种 A 方案:是空心边框形式,看起来弹出菜单很轻盈,一屏 6 个选项带文字不会觉得拥挤,缺点是单个
图标的轮廓有的地方不连贯,有可能会造成辨识度降低。另外最后选用的方案 B 是实心剪影的形式,这种表现方式
整个 icon 看起来很整体,比较饱满,识别度较高,不过如果一屏图标过多的话可能会稍有拥挤的感觉,但如果以
缩小的方式处理,对于手指触摸操作来说是不合理的,这里 icon 作了圆角处理和镂空实心均衡化处理,能在视觉
感受上弱化一下可能会产生的拥挤感。
4.4 出现“水波纹”的问题
色彩显示效果上 Android 系统的手机由于硬件和技术上的限制和问题,会在某些情况下产生令人抓狂的水波纹问题,在尝试的过程中大致总结了容易造成水波纹的渐变使用,如上图左边两个图块:如果使用规则的径向渐变,程序贴
图后极容易出现水波纹,另一种情况是如右边的两图块:渐变色差值过小,就是说渐变特别的细腻不显著的话也很
容易在切图程序贴图后出现明显的水波纹。所以后面在配色和设计过程中可以据此避免尽量这样的情况出现。
4.5 最终选用方案:
五、后记
(1)通过对Android手机平台的音乐播放器软件的开发,使我对Android音乐播放器系统的整体设计有一个深入的了解,对整个流程也会有一个清晰的认识。开发Android音乐播放器,要抓住开发的核心部分,音乐播放器大体由播放主界面、播放列表、菜单、播放设置、文件浏览、歌曲搜索六大核心组成,只要掌握了这六部分的开发,音乐播放器就能初具规模。而其它的功能都是在这六个功能的基础上去补充添加的,但是这是功能的确是必不可少的功能,否则就不能算是音乐播放器了。
(2)音乐播放器系统实现了播放器的基本功能:播放,暂停、停止、上/下一首、音量调节、歌词显示、播放模式、歌曲搜索、文件浏览器、播放列表查询等功能。运用的系统平台是现今最热门的Android系统,是一个开源的基于Linux系统的手机平台。是以Java语言编写+SQLite数据库支持+SharePreference配置文件的组合方式进行数据管理。实现了音乐播放器的系统编程。
(3)本次程序设计,对播放器的系统结构框架做了精心的构思与设计,采用主要开发工具是Eclipse3.5+Java语言的支持,Android Development Tool的插件,和Android SDK2.1版本的全面结合,才使整个音乐播放器系统得以实现。
(4)总之,经过几个月的Android系统技术知识的学习和对音乐播放器的构思与设计,使我对Android系统有了一定的了解,让我对Android系统上的开发流程和开发模式有了深入的了解,这对我以后的Android项目开发有很大的帮助。参 考 书 籍
《Java API文档》
《Android 系统原理及开发要点详解》 作者:韩超,梁泉 著 《Android SDK开发范例大全》
作者:郭宏志 著 《Android Google API开发文档》 作者:Google官方 《Android Application Development》 出版社: O’Reilly 《Java编程思想think of java》 作者:Bruce Eckel 《手机软件研发培训教材》
出版社:极地星空3G通信学院 参 考 文 献
[1] 张孝祥著. java就业培训教程[M].北京:清华大学出版社,2007.[2] 余志龙编著.Google Android SDK开发范例大全[M].北京:人民邮电出版社,2009-7-1.[3] E2ECloud工作室著.深入浅出Google Android[M].北京:人民邮电出版社,2009-08-1.[4] 靳岩 姚尚朗著.Google Android开发入门与实战[M].北京:清华大学出版社,2009-07-01.[5] 高昂著.支持动态语言的Android平台[M].北京:人民邮电出版社,2009-05-07.[6] eoe.Android开发社区.http://. 2010-04-10.[9] 高焕堂编.Android 应用框架原理与程式设计(第三版)[M].北京:清华大学出版社,2008-10-03 [10] 杨丰盛主编.Android 应用开发揭秘[M].西安:机械工业出版社,2010-01-25 [11] XML解析方式DOM、SAX之比较.http://wghjay.javaeye.com/blog/519955.2009-11-18.名词术语:
JDK
Java Development Kit
Android 基于Linux操作系统的手机平台 SDK
Android Software Development Kit ADT Android Development Tool Anroid开发工具
IDE Intergrate Design Environment
集成开发环境 ADB
Android Debug Bridge 调试桥
AVD
Android Virtual Devices
Android虚拟设备
DDMS Dalvik Debug Monitor Service 调试监视服务 AIDL Android Interface Description Language Android接口描述语言 xmlns XML NamePace XML命名空间