如何在 UWP MediaPlayer 中启用随机播放模式

How to enable shuffle mode in UWP MediaPlayer

我正在使用 MediaPlayer with MediaPlaybackList 在我的应用程序中播放 mp3 个文件。

播放列表定义如下:

SongList = new MediaPlaybackList
{
    AutoRepeatEnabled = true,
    ShuffleEnabled = true
};

歌曲列表中包含 3 首歌曲。

我使用此代码播放音乐:

private MediaPlayer mPlayerMusic = new MediaPlayer();
mPlayerMusic.Source = SongList;
mPlayerMusic.Play();

每次运行时,都会播放同一首歌曲!随机播放似乎不起作用。自动重复确实有效,第一首歌曲在最后一首歌曲之后播放,但没有随机播放!

我做错了什么?

如果要随机播放mp3个文件,需要删除SongList= new MediaPlaybackList{…}语句中的ShuffleEnabled=true语句,并在SongList.ShuffleEnabled = true;语句上方添加语句SongList.ShuffleEnabled = true;声明 mPlayerMusic.Source = SongList;。像这样:

SongList = new MediaPlaybackList()
{
    AutoRepeatEnabled = true
};

歌曲列表中包含 3 首歌曲。

使用此代码播放音乐:

private MediaPlayer mPlayerMusic = new MediaPlayer();

SongList.ShuffleEnabled = true;
mPlayerMusic.Source = SongList;
mPlayerMusic.Play();

注意,尝试将四首歌曲填充到 SongList 中,语句 SongList= new MediaPlaybackList{…} 中的语句 ShuffleEnabled=true 可能会起作用。