我正在制作一个Android简单媒体播放器,用于播放音频文件并遇到问题。
我想停止天文台和媒体播放器
当前播放文件的持续时间==文件的总持续时间..?
这是我的演示代码。
private void playAudio() {
mediaPlayer = new MediaPlayer();
try {
mediaPlayer.setDataSource(outputFile);
} catch (IOException e) {
e.printStackTrace();
}
try {
mediaPlayer.prepare();
} catch (IOException e) {
e.printStackTrace();
}
mChronometer.setBase(SystemClock.elapsedRealtime());
mChronometer.start();
mediaPlayer.start();
long totalDuration = mediaPlayer.getDuration();
Log.i("MediaPlayer", String.valueOf(totalDuration));
}
这是从答案中添加的另一个代码。 我添加了listrner 的 mediaPlayer.setOnCompletionListener(CompletionListener);
MediaPlayer.OnCompletionListener CompletionListener = new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
long totalDuration = mp.getDuration();
}
};
答案 0 :(得分:1)
使用onCompletionListener
检查媒体播放器何时到达媒体文件的末尾。
mPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
// do your task
}
});
如需进一步参考,请参阅此链接