8

私はsetNextMediaPlayer()、ギャップレス再生音楽プレーヤーを作成する方法に取り組んでいます。

setNextMediaPlayer()はギャップレス再生を可能にする優れた方法ですが、次の曲の情報をレイアウトに更新するのに問題がありました。メソッドを使用する場合、メソッドsetNextMediaPlayer()を使用して再生を開始する必要がないstart()ため、再生がいつ開始されるかを正確に把握する方法はありません。または、情報更新方法を入れてonCompletionいますが、限界があります。

public void onCompletion(MediaPlayer mp) {
    Log.d(TAG, "onCompletion():");
    displayInfoSingle(nextItem);//refresh albumart and song info.
}

MediaPlayerオブジェクトの再生開始を検出するリスナーはありますか?

Tarun Varshneyの回答の後に追加>>>

私は次のようにシームレスsetNextMediaPlayer()に再生するために使用しています。mp2mp1

mp2 = new MediaPlayer();
mp2.setDataSource(nextItem.getUri());
mp2.setOnCompletionListener(this);
mp2.prepare();
mp1.setNextMediaPlayer(mp2);

mp2再生前にすでに準備されている可能性があるため、**mp2.prepare();**必要onPreparedListenerなタイミングで呼び出されません。ofのmp2パラメータとして設定する他の方法はありますか?setNextMediaPlayermp1

4

1 に答える 1