现在的位置: 首页 > 综合 > 正文

MediaPlayer播放音频

2013年09月03日 ⁄ 综合 ⁄ 共 1755字 ⁄ 字号 评论关闭

MediaPlayer类

静态构造方法

方法名称

描述

public
static MediaPlayer create(Context context, Uri uri, SurfaceHolder holder)

指定从资源ID对应的资源文件中来装载音乐文件,同时指定了SurfaceHolder对象并返回MediaPlyaer对象

public
static MediaPlayer create(Context context, int resid)

指定从资源ID对应的资源文件中来装载音乐文件,并返回MediaPlyaer对象

public
static MediaPlayer create(Context context, Uri uri)

指定从Uri对应的资源文件中来装载音乐文件,并返回MediaPlyaer对象

 

常用方法

方法名称

描述

public
void start ()

开始或恢复播放

public
void stop()

停止播放

public
void pause()

暂停播放

public
void setDataSource (String path)

从指定的装载path路径所代表的文件

public
void setDataSource (FileDescriptor fd, long offset, long length)

指定装载fd所代表的文件中从offset开始、长度为length的文件内容

public
void setDataSource (FileDescriptor fd)

指定装载fd所代表的文件

public
void setDataSource (Context context, Uri uri)

指定装载uri所代表的文件

public
void setDataSource (Context context, Uri uri, Map<String, String> headers)

指定装载uri所代表的文件

public
void prepare()

预期准备,因为setDataSource()方法之后,MediaPlayer并未真正的去装载那些音频文件,需要调用prepare()这个方法去准备音频

public
void setLooping(boolean looping)

设置是否循环播放这个音乐文件

public
void setSurface(Surface surface)

设置Surface

public
void setVolume(float leftVolume,float rightVolume)

设置音量

public
void setDisplay(SurfaceHolder sh)

设置显示方式

public
void seekTo(int mses)

寻求指定的时间位置。

public
void isLooping()

判断是否循环播放

public
void isPlaying()

判断是否正在播放

public
void release()

释放相关该MediaPlayer对象的资源。

 

绑定事件监听器

监听器

描述

public
void setOnCompletionListener (MediaPlayer.OnCompletionListener listener)

为MediaPlayer的播放完成事件绑定事件监听器

public
void setOnErrorListener (MediaPlayer.OnErrorListener listener)

为MediaPlayer的播放错误事件绑定事件监听器

public
void setOnPreparedListener (MediaPlayer.OnPreparedListener listener)

当MediaPlayer调用prepare()方法时触发该监听器

public
void setOnSeekCompleteListener (MediaPlayer.OnSeekCompleteListener listener)

当MediaPlayer调用seek()方法的时候触发该监听器

 

播放音频

1、播放应用的资源文件(res/raw/)

通过我们上面介绍的几个静态构造函数创建MediaPlayer对象

  1. MediaPlayer  mediaPlayer = MediaPlayer.create(MediaPlayerDemoActivity.this,  

抱歉!评论已关闭.