1

私はオーディオプレーヤーを作成し、オーディオを数回再生したいのですが、最初の時間が完了すると、プログレスバーが最後にスタックします.プログレスバーの最後の位置を取得しようとしました

boolean atEnd = audioStreamer.getMediaPlayer().getDuration()
                - audioStreamer.getMediaPlayer().getCurrentPosition() == 0;

しかし、毎回falseになります。

前もって感謝します。

4

1 に答える 1

4

OnCompletionListener[1]を設定するだけです。

audioStreamer.getMediaPlayer().
       setOnCompletionListener(
            new MediaPlayer.OnCompletionListener() {
                  public void onCompletion(MediaPlayer mp) {
                    Log.d("MediaPlayer", "end reached");
                  }
            }
       ); 

[1]

再生中にメディア ソースの最後に達したときに呼び出されるコールバックを登録します。

于 2012-12-20T13:15:26.837 に答える