ophone程序开发入门之音乐播放器

ophone程序开发入门之音乐播放器

ID:32572497

大小:463.50 KB

页数:19页

时间:2019-02-12

ophone程序开发入门之音乐播放器_第1页
ophone程序开发入门之音乐播放器_第2页
ophone程序开发入门之音乐播放器_第3页
ophone程序开发入门之音乐播放器_第4页
ophone程序开发入门之音乐播放器_第5页
资源描述:

《ophone程序开发入门之音乐播放器》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、...OPhone平台提供了完整的多媒体解决方案。为开发者提供了统一的,简单易用的开发接口。本文首先介绍了OPhone平台的多媒体框架,然后详细介绍了在OPhone平台上开发音乐播放程序所需的基本知识。通过一步一步构建一个简单的音乐播放器示例程序,来帮助读者了解具体的开发过程。该示例涵盖了Application,Activity,Service,Intent,BroadCastReceiver等基本概念,使读者对OPhone程序的开发有一个全面的了解,进一步巩固和熟悉这些基本概念。最后介绍了如何利用MAT工具分析

2、OPhone程序。       本文适合OPhone平台开发的初学者阅读。(作者:CMRI孟钊)OPhone平台的多媒体架构       在开始构建我们的示例程序前,先让我们大概了解一下OPhone平台的多媒体框架。 图  一      图一是OPhone平台的整体框架结构,从图上我们可以看出OPhone平台大致可以分成以下几个层次:1.最上层是Application层。它包含了主屏,电话,浏览器,地址本等核心的应用程序。我们将开发的音乐播放器也属于这一层。2.第二层是ApplicationFramework层。

3、这一层为开发者提供了完整的编程接口。多媒体部分提供了MediaPlayer,MediaRecorder等接口。同时MediaProvider,MediaScanner等系统服务也对媒体文件的管理提供了支持。本文将重点介绍它们的使用。3.第三层是Library层,它由一系列的c/c++库组成,这些库的能力通过JNI封装成java接口,由ApplicationFramework层提供给开发者。多媒体系统库OpenCore,它是OPhone多媒体的核心,来源于PacketVideo。它非常复杂,提供了完整的多媒体解决方

4、案。......1.最底层为LinuxKernel和驱动,负责与硬件的数据交互等。   图二说明了在OPhone平台中播放音乐文件时的调用关系。  对于应用程序开发者来说,需要重点学习和关注的是如何使用AppliationFramework层提供给开发者的接口。音乐媒体信息的管理  在开始构架程序之前,我们需要准备一下必须的基本知识。首先来了解一下在OPhone平台中应该如何获取音乐文件的信息以及如何管理这些信息。  OPhone系统提供了MediaScanner,MediaProvider,MediaStore

5、等接口,并且提供了一套数据库表格,通过ContentProvider的方式提供给用户。当手机开机或者有SD卡插拔等事件发生时,系统将会自动扫描SD卡和手机内存上的媒体文件,如audio,video,图片等,将相应的信息放到定义好的数据库表格中。在这个程序中,我们不需要关心如何去扫描手机中的文件,只要了解如何查询和使用这些信息就可以了。  MediaStore中定义了一系列的数据表格,通过ContentResolver提供的查询接口,我们可以得到各种需要的信息。下面我们重点介绍如何管理SD卡上的音乐文件信息。  先

6、来了解一下ContentResolver的查询接口: viewplaincopytoclipboardprint?......1.Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder);  Cursorquery(Uriuri,String[]projection,Stringselection,String[]selectionArgs,StringsortOrd

7、er);        Uri:指明要查询的数据库名称加上表的名称,从MediaStore中我们可以找到相应信息的参数,具体请参考开发文档。       Projection:指定查询数据库表中的哪几列,返回的游标中将包括相应的信息。Null则返回所有信息。       selection:指定查询条件       selectionArgs:参数selection里有?这个符号是,这里可以以实际值代替这个问号。如果selection这个没有?的话,那么这个String数组可以为null。       SortO

8、rder:指定查询结果的排列顺序  查询所有歌曲: viewplaincopytoclipboardprint?1.Cursor cursor = query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null, MediaStore.Audio.Media.DEFAULT_SORT_ORDER); 

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。