如何使用class“重复播放媒体文件”;MediaPlayer“;在Android中多次(例如n次)?

如何使用class“重复播放媒体文件”;MediaPlayer“;在Android中多次(例如n次)?,android,Android,我有播放一次媒体文件的代码,如下所示: MediaPlayer mp = MediaPlayer.create(this, R.raw.song); mp.start(); int numberOfReplay = 10; int currentReplay = 0; MediaPlayer mp= MediaPlayer.create(this, R.raw.song); mp.start(); currentReplay++; mp.setOnCompletionListener(n

我有播放一次媒体文件的代码,如下所示:

MediaPlayer mp = MediaPlayer.create(this, R.raw.song);
mp.start();
int numberOfReplay = 10;
int currentReplay = 0;

MediaPlayer mp= MediaPlayer.create(this, R.raw.song);

mp.start();
currentReplay++;

mp.setOnCompletionListener(new OnCompletionListener() {
    public void onCompletion(MediaPlayer mp) {
        if( currentReplay < numberOfReplay){
            mp.start();
            currentReplay++;
        }
    }
} 

但是我如何重复播放媒体文件数次(例如n次)?

您可以在CompletionListener上附加一个
,减少一个计数器,然后再次启动媒体播放器,播放同一个文件。

编辑:

您必须启动
MediaPlayer
项,然后添加
onCompletionListener
,该项将在每次迭代完成时调用

然后,
start()

MediaPlayer mp = MediaPlayer.create(this, R.raw.song);
mp.start();
int numberOfReplay = 10;
int currentReplay = 0;

MediaPlayer mp= MediaPlayer.create(this, R.raw.song);

mp.start();
currentReplay++;

mp.setOnCompletionListener(new OnCompletionListener() {
    public void onCompletion(MediaPlayer mp) {
        if( currentReplay < numberOfReplay){
            mp.start();
            currentReplay++;
        }
    }
} 
int numberOfReplay=10;
int currentReplay=0;
MediaPlayer mp=MediaPlayer.create(这个,R.raw.song);
mp.start();
currentReplay++;
mp.setOnCompletionListener(新的OnCompletionListener(){
完成时的公共作废(MediaPlayer mp){
如果(currentReplay
此代码不适用work@FarnadTohidkhah哪个错误出现了?它不会播放anything@FarnadTohidkhah我编辑过,不管怎样,你知道你必须把你自己的歌的名字设置正确吗?R.raw.song是一个样本代码中有一些错误