android如何得到内侧的球员持续时间和停止 Chronometer 吗?

发布时间: 2016/9/27 22:47:56
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我正在做 android 简单的媒体播放器播放音频文件和面对它的问题。

我想要停止 Chronometer 和媒体播放器

当前播放的持续文件时文件的总持续时间 = =......?

这里是我的演示代码。

   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();


        }
    };

       

解决方法 1:

使用 onCompletionListener 来检查媒体播放器当到达媒体文件的末尾。

    mPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
    public void onCompletion(MediaPlayer mp) {
         // do your task
    }
});

为进一步参考看到此链接

媒体播放器

官方微信
官方QQ群
31647020