本文实例讲述了Android开发之MediaPlayer多媒体(音频,视频)播放工具类。分享给大家供大家参考,具体如下:
package com.android.imooc.chat;
import java.io.IOException;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.media.MediaPlayer.OnErrorListener;
/**
* @描述 声音控制类
* @项目名称 App_imooc
* @包名 com.android.imooc.chat
* @类名 MediaHelper
* @author chenlin
* @date 2013年6月17日 下午10:46:01
* @version 1.0
*/
public class MediaHelper {
private static MediaPlayer mPlayer;
private static boolean isPause = false;
public static void playSound(String filePath, OnCompletionListener listener) {
if (mPlayer == null) {
mPlayer = new MediaPlayer();
} else {
mPlayer.reset();
}
mPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mPlayer.setOnCompletionListener(listener);
mPlayer.setOnErrorListener(new OnErrorListener() {
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
mPlayer.reset();
return false;
}
});
try {
mPlayer.setDataSource(filePath);
mPlayer.prepare();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (SecurityException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
throw new RuntimeException("读取文件异常:" + e.getMessage());
}
mPlayer.start();
isPause = false;
}
public static void pause() {
if (mPlayer != null && mPlayer.isPlaying()) {
mPlayer.pause();
isPause = true;
}
}
// 继续
public static void resume() {
if (mPlayer != null && isPause) {
mPlayer.start();
isPause = false;
}
}
public static void release() {
if (mPlayer != null) {
mPlayer.release();
mPlayer = null;
}
}
}
希望本文所述对大家Android程序设计有所帮助。