package com.bosi.chineseclass.components;
import android.content.Context;
import android.media.MediaPlayer;
public class MutilMediaPlayerTools implements MediaPlayer.OnCompletionListener {
private int mCurrentPlayIndex = 0;
// 播放的路径
private String[] mPaths;
private MediaPlayerPools mPlayerPools = null;
public MutilMediaPlayerTools(Context context) {
mPlayerPools = new MediaPlayerPools(context);
mPlayerPools.setCompleteListener(this);
}
public void setCurrentFilePath(String[] paths){
this.mPaths = paths;
}
public void play() {
if (mPaths == null) {
return;
}
if (mPaths.length == 0) {
return;
}
if (mPaths.length == 0) {
mPlayerPools.playMediaFile(mPaths[0]);
return;
}
if (mCurrentPlayIndex < mPaths.length) {
mPlayerPools.playMediaFile(mPaths[mCurrentPlayIndex]);
}
if (mMutilMediaPlayerListener != null && mCurrentPlayIndex == mPaths.length) {
mMutilMediaPlayerListener.finished();
}
}
private MutilMediaPlayerListener mMutilMediaPlayerListener;
public void setMutilMediaPlayerListener(MutilMediaPlayerListener mMutilMediaPlayerListener) {
this.mMutilMediaPlayerListener = mMutilMediaPlayerListener;
}
public static interface MutilMediaPlayerListener {
public void finished();
}
public void reset() {
mCurrentPlayIndex = 0;
}
@Override
public void onCompletion(MediaPlayer mp) {
mCurrentPlayIndex++;
play();
}
public void onDestory() {
if (mPlayerPools != null) {
mPlayerPools.destroyMediaPlayer();
}
}
}