基于移动互联开发平台的音乐播放器的设计与实现

来源 :经营管理者·中旬刊 | 被引量 : 0次 | 上传用户:crypt2074
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:随着3G时代的到来,移动互联网应用也越来越丰富,具体应用会倾向于智能化、个性化。从最初的只能语音通话的1G网络到现在可以传输图像、视频、上网的4G网络。无线通信与国际互联网等多媒体通信结合的这种移动通信系统极大范围的满足了用户对无线网络的需要。本文介绍了基于Android开发平台,运用Android SDK开发包,使用Java开发技术开发的专属的音乐播放软件能够为广大 Android 手机用户提供更方便快捷的本地音乐播放功能。开发的具有一定的实用性。
  关键词:音乐播放 数据源 android
  近年来,手机的发展呈现出智能化趋势。随着智能手机的发展,移动通信技术也在不断进步,从最初的只能语音通话的1G网络到现在可以传输图像、视频、上网的4G网络。无线通信与国际互联网等多媒体通信结合的这种移动通信系统极大范围的满足了用户对无线网络的需要。据相关调查显示,目前手机用户已超过电脑用户,成为最普遍的移动电子产品。Android是Google公司开发的手机及平板电脑的操作系统,是目前移动平台最受欢迎的操作系统之一。随着 Android平台的发展,其便捷性与开放性等特征越来越明显,因此基于Android 平台的智能手机更受欢迎,在智能手机领域的地位越来越重要。基于 Android 平台开发应用程序,可以极大丰富手机的应用软件,因此,基于 Android 平台所开发的专属的音乐播放软件能够为广大 Android 手机用户提供更方便快捷的本地音乐播放功能。
  一、系统设计
  1.系统需求分析。作为计算机广泛使用的应用之一,音频资源在网络中是相当的丰富,这些看似平常的资源,已经渐渐成为人们生活中必不可少的一部分。因此手机播放器也紧跟着发展起来,但是很多播放器外观过于花哨,功能庞大,造成用户手机CPU效率低、内存占用率高等资源浪费问题。在用户手机多任务操作时,资源紧张,效率降低,而对于大多数普通用户,许多功能用不上,形同虚设。针对以上问题,开发音乐播放软件应以优化性能,继承播放器的常用功能,能播放常见音频文件的功能,如MP3等,除了能播放常见格式的语音视频文件,高级功能:还能播放RMVB格式的视频文件。此外,还能支持中文、英文等语言界面。拥有播放菜单,能选择播放清单,具备一般播放器的功能,如快進,快退,音量调节等。播放模式也应比较完善,有单曲,顺序,循环,随机播放等模式。
  2.系统功能设计。设计的音乐播放器是基于Android平台下的,基于需求的分析,音乐播放器的整个设计功能如图1所示包含:
  2.1菜单:完成播放器主界面信息显示,用户可以通过系统帮助退出系统、更换皮肤等功能。
  2.2播放设定:通过声音进度用户可以通过音乐增减按钮调节声音大小,通过播放模式可以选择循环播放,顺序播放,单曲循环等;歌词显示可以开关歌词模式。
  2.3播放列表:本地音乐自动搜索用户通过该功能能够快速搜索移动设备本地存储中的音频文件。在查找到歌曲后可以直接把添加到列表。通过播放列表,用户可以选择播放的音乐,播放器也可以显示该音乐的歌曲名、专辑、歌手以及歌曲的播放总时间,播放进度等歌曲的相关功能;
  2.4播放界面:完成歌曲切换,通过该功能,用户能够实现对歌曲的切换操作,切换到当前歌曲的上一首或下一首进行播放,如果只有一首歌曲时,该功能键将失去作用。
  二、系统实现
  1.android应用开发框架。android应用开发框架的系统架构由5部分组成,分别是:Linux内核(Linux Kernel)、Android运行库(Android Runtime)、核心类库(Libraries)、应用程序框架层(Application Framework)、应用程序层(Applications)。Android系统开发前需要在系统中搭建开发环境,将插件ADT集成到了Eclipse工具上,安装过ADT插件后的Eclipse会多出一些功能按钮。因此,一个Android程序启动后,系统会启动一个模拟器(Emulator),该模拟器是一款手机板的样式,拥有手机硬件的基本操作。由于模拟器的启动太慢,也可用手机连接电脑,代替模拟器[2]。
  2.系统实现。音乐播放器实现的核心类是 MyMediaPlayer 类。主要实现播放功能、暂停功能、上一首歌曲功能、下一首歌曲功能。分为以下几个步骤:
  2.1如果用户按下播放按钮,则播放当前歌曲。
  2.2如果用户按下暂停按钮,则暂停当前播放歌曲。
  2.3如果用户按下一首歌曲按钮,则应用程序播放下一首歌曲。
  2.4如果用户按下上一首歌曲按钮,则播放上一首歌曲。Android的多媒体播放原理:Android源程序已经封装好了一个接口类,叫MediaPlayer。该接口在执行行需要一个数据源,通过如下四个步骤:第一步:MediaPlayer.reset();复位操作,为以后的媒体准备播放作准备。 第二步:传入歌曲数据源,这里也是一个数据流 MediaPlayer.setDataSource(String path);参数需要传一个路径,该接口类在收到路径后将其转化为数据源。第三步:准备播放数据源,调用方法MediaPlayer.Prepare();第四步:MediaPlayer.Start();播放数据源,该数据源播放后,不再与程序 有关,需要用MediaPlayer.Stop()方法让其停止或MediaPlayer.Start()方法让其启动;而播放的上一曲和下一曲通过获取播放指针,再对播放指针进行加一和减一来达到播放上一曲和下一曲的目的。歌曲数据源的获得:要获得数据源,需要提供给接口类一个歌曲存放路径,而这个路径已经被事先放到数据库里了,只需要对数据库进行操作,将里面的路径取出。   这里将调用getMusicFileList的一个方法query();代码算法如下:
  // 获取音乐文件列表
  private List getMusicFileList() {
  List list = new ArrayList();
  String[] projection = new String[] { MediaStore.Audio.Media._ID,
  MediaStore.Audio.Media.TITLE, MediaStore.Audio.Media.DURATION,
  MediaStore.Audio.Media.DATA, MediaStore.Audio.Media.ARTIST };
  long time1 = System.currentTimeMillis();
  // 获取游标,其他应用程序可以通过获取ContentResolver通过Uri来操作其他程序提供的数据
  Cursor cursor = getContentResolver().query(
  MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, projection, null,null, null);
  if (cursor != null) {
  cursor.moveToFirst();
  int colNameIndex = cursor
  .getColumnIndex(MediaStore.Audio.Media.TITLE);
  int colTimeIndex = cursor
  .getColumnIndex(MediaStore.Audio.Media.DURATION);
  int colPathIndex = cursor .getColumnIndex(MediaStore.Audio.Media.DATA);
  int colArtistIndex = cursor .getColumnIndex(MediaStore.Audio.Media.ARTIST);
  int fileNum = cursor.getCount();
  for (int counter = 0; counter < fileNum; counter++) {
  MusicData data = new MusicData();
  data.mMusicName = cursor.getString(colNameIndex);
  data.mMusicTime = cursor.getInt(colTimeIndex);
  data.mMusicPath = cursor.getString(colPathIndex);
  data.mMusicAritst = cursor.getString(colArtistIndex);
  list.add(data);
  cursor.moveToNext();}
  cursor.close();}
  long time2 = System.currentTimeMillis();
  Log.i(TAG, "seach filelist cost = " + (time2 - time1));
  return list;}
  方法getContentResolver是包android.content.ContextWrapper里面的方法,它会自动的调用ContentProvider中的关联数据库,用这个方法就可以操作数据库。数据库操作需要一个Uri ,Uri类似一个网络连接的Url,是数据库唯一的标识,不同的Uri可以操作不同的数据库表。
  三、结语
  開发出一款基于移动互联开发平台的占用较少手机资源的优性能的音乐播放器对于Android手机使用群体是非常有意义的。本项目是基于Android开发平台,运用Android SDK开发包,使用Java开发技术开发的具有一定的实用性。
  参考文献:
  [1] 余志龙.Google Android SDK开发范例大全[M].北京:人民邮电出版社,2010.06.
  [2] E2ECloud工作.深入浅出Google Android[M].北京:人民邮电出版社,2009.08.
  [3]Ed Burnette .Hello,Android Introducing Google’s Mobile Development Platform, 3rd Edition[M] Pragmatic Bookshelf,2008.12.
  [4] 樊新,高曙.基于智能移动终端的安全检查系统设计与实现[J].微型机与应用,2012,31(20):87-92.
  [5] 刘安战, 贾晓辉.基于Andriod的私密短信系统设计与实现[J].微型机与应用,2012,31(17):51-56.
  作者简介:惠燕(1979—),女,陕西咸阳人,硕士,讲师,主要研究方向为计算机网络管理,计算机软件理论。
其他文献
摘 要: 随着学校的发展与建设,现有的后勤管理模式逐渐出现管理中的漏洞,如维修、返修反馈不及时和维修位置不明确,这类的报修及维修信息沟通的不畅通导致延误了设备设施修理的恢复时间,很大程度上影响了后续维修与反馈过程。教学设备设施及固定资产的数据采集需花相当大的人力,各部门的配合程度也给成本核算的准确性带来了的困难,阻碍了后勤管理的速度与服务质量,后勤职员被动的降低了工作效率,导致教职工感到不满意。所
期刊
摘 要:体验经济时代已经到来。消费者的需求已经从对量、质的层面,转向了情感需求。真正的情感营销,在于诉诸情感诉求手法,触动消费者的心弦。惟有将情感诉求手法贯穿营销活动的全过程,才能提升品牌粘度,增强产品竞争力,实现产品与消费者的有效互动。  关键词:情感诉求 体验经济 广告 创作  孙子兵法有云“攻城为下,攻心为上”。体验经济时代,迅速且准确地占领消费者的心智资源,才能实现产品与消费者的无缝对接、
期刊
摘 要:提升青年教师职业精神对于提高教师素质及培养世纪人才方面具有深远的意义。这一项重要任务既是新形势下高职工会工作面临的重大研究课题,也是高校工会工作机制创新,教育平台建构,和谐校园构建的有效载体。提高青年教师的主体意识,增强他们的使命感、责任感,使教师职业精神真正得到提升。  关键词:工会 青年教师 职业精神  一、教师职业精神概述  职业精神是与人们的职业活动紧密联系,具有职业特征的精神与操
期刊
一、屈臣氏集团介绍  屈臣氏集团每周超过 2800 万名顾客在全球 13个零售品牌所开设的12000间实体店铺以及电子商店上购物,涉及的商品包括有保健商品、日用化妆品、零食饮品、美容产品、电子产品等业务。  1.理论概述。自有品牌又称为PB商品(Private Brand),是零售企业通过市场调研获得消费者对于某类商品的需求信息而开发的具有自己品牌特色的新产品。从现在的批发商和零售企业之间的经营模
期刊
摘 要:在海宁皮革城,皮草类服饰是重头产品,这类季节性服饰如何在淡季也能畅销是厂家和商家常年需要考虑的问题。本文根据皮革城的营销现状,以及对消费者的淡季消费需求调查结果,并结合海宁皮革城淡季营销存在的问题提出对策与建议同时也为服装行业的此类问题提供參考。  关键词:淡季营销 皮草 海宁皮革城  一、海宁皮革城的基本情况以及淡季营销的概述  致力于打造中国最具影响力的皮革市场的海宁皮革城在1994年
期刊
摘 要:发展农村集体经济,培育壮大村级集体经济实力,改变“空壳村”现状,使村集体收入积累不断增加,从而强化农村集体经济组织服务功能,增强农村基层组织的凝聚力,促进农村经济发展和群众共同富裕,是建设社会主义新农村迫切需要。近期,通过对长春市朝阳区农村集体经济发展状况开展的专题调研中发现农村集体经济发展还存在一些问题函待解决。  关键词:农村 集体经济 做法与成效  一、全区农村集体经济发展现状  朝
期刊
摘 要:當前,在全球经济化的背景影响下,我国的企业向外发展,不仅能够有效的提高我国企业在国际市场当中的竞争力和地位,而且能够推动我国企业的运营和发展,对外投资可以说是我国与其他国家相互之间合作的重要部分之一,起到非常重要的影响和作用,本文对我国对外投资的环境风险进行详细的讨论并提出一系列的对策建议。  关键词:对外投资 环境风险 对策 分析  在当前全球经济化的背景影响下,国外的投资流动发展的越来
期刊
摘 要:农村集体经济,是达成农村经济可持续发展的重要桥梁,也是促进农村经济共同富裕完成城乡经济一体化发展的有效途径。大力发展农村集体经济,对保障农民生活质量、优化农村社会治理起着重要作用。本文从当前农村集体经济的发展现状入手,分析其存在的不足因素,提出了相关对策。  关键词:农村集体经济 问题 对策  一、农村集体经济发展现状  1.当前农村集体经济发展滞后。随着我国城镇化步伐加快,更多的农村土地
期刊
摘 要:本文对我国高校财务治理结构的现状进行了深入分析,并提出了针对性的改善途径,以期通过引入高校董事会制度,对财务治理结构进行完善,以确保高校资产安全、提高资金使用效益,协调各利益相关者责、权、利关系以及规范高校财务行为。  关键词:高校 财务治理 结构现状  随着科教兴国战略的实施,国家对高等教育的财力投入不断增加,2012年全年财政性教育经费支出总额超过两万亿元。与此同时,对高校财务管理提出
期刊
摘 要:“十三五”时期的到来,全面建设小康社会的任务日渐紧迫,精准扶贫成为实现全面小康社会的关键举措。精准扶贫是相对于粗放扶贫而言的,是指针对不同贫困区域的实际情况和“特色”运用科学有效的程序对扶贫对象实施精确帮扶、精准管理,制定专属性的扶贫计划。“大数据时代”的兴起,可以为精准扶贫提供新的视角,更好的实现精准定位,精准扶贫。  关键词:大数据 精准扶贫  “消除贫困,改善民生,实现共同富裕”是实
期刊