Android MediaPlayer工具类
—————————————————–
(java 架构师全套教程,共760G, 让你从零到架构师,每月轻松拿3万)
目录如下:
01.高级架构师四十二个阶段高
02.Java高级系统培训架构课程148课时
03.Java高级互联网架构师课程
04.Java互联网架构Netty、Nio、Mina等-视频教程
05.Java高级架构设计2016整理-视频教程
06.架构师基础、高级片
07.Java架构师必修linux运维系列课程
08.Java高级系统培训架构课程116课时
(送:hadoop系列教程,java设计模式与数据结构, Spring Cloud微服务, SpringBoot入门)
01高级架构师四十二个阶段高内容:
—————————————————–
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;
}
}
}