要在应用程序中连续播放raw文件夹中的歌曲而不循环,可以使用以下步骤:
以下是一个简单的示例代码,展示如何连续播放raw文件夹中的多首歌曲而不循环:
import android.media.MediaPlayer;
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
private MediaPlayer mediaPlayer;
private int[] songResources = {R.raw.song1, R.raw.song2, R.raw.song3}; // 替换为你的歌曲资源ID
private int currentSongIndex = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
playNextSong();
}
private void playNextSong() {
if (mediaPlayer != null) {
mediaPlayer.release();
}
mediaPlayer = MediaPlayer.create(this, songResources[currentSongIndex]);
mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
currentSongIndex++;
if (currentSongIndex < songResources.length) {
playNextSong();
} else {
// 所有歌曲播放完毕后的处理
mediaPlayer.release();
mediaPlayer = null;
}
}
});
mediaPlayer.start();
}
@Override
protected void onDestroy() {
super.onDestroy();
if (mediaPlayer != null) {
mediaPlayer.release();
mediaPlayer = null;
}
}
}
onDestroy
方法中释放MediaPlayer,并在播放下一首歌前检查并释放当前MediaPlayer。通过上述步骤和代码示例,可以实现连续播放raw文件夹中的歌曲而不进行循环播放。
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云