Ошибка при добавлении музыкальных файлов в список AudioTrack - WP8
Я новичок в разработке приложений и создаю музыкальный проигрыватель для Windows Phone. Проблема в том, что я пытаюсь импортировать музыку из локальной музыкальной библиотеки в свое приложение.
У меня есть AudioPlaybackAgent и список музыки, которую он будет воспроизводить. Вот список:
public static List<AudioTrack> _playList = new List<AudioTrack>
{
new AudioTrack(new Uri("Chama os Mulekes.mp3", UriKind.Relative),
"Chama os Mulekes",
"ConeCrewDiretoria",
"Com os Neurônios Evoluindo",
new Uri("https://lh6.googleusercontent.com/-_d2oha1QzNM/UhjYxv3XsLI/AAAAAAAAAWk/QyWgG7ilTAs/s0-d/Cone-Crew-Diretoria-Com-os-neuronios-evoluindo.jpg", UriKind.Absolute))
};
Я добавил в интерфейс кнопку, которая при нажатии импортирует файлы локальной музыкальной библиотеки в этот список воспроизведения. Вот код:
private async void ImportButton_Click(object sender, RoutedEventArgs e)
{
var musicLibrary = await KnownFolders.MusicLibrary.GetFilesAsync();
foreach (StorageFile _file in musicLibrary)
{
var musicTags = await _file.Properties.GetMusicPropertiesAsync();
MusicPlusAgent.AudioPlayer._playList.Add
(new AudioTrack (new Uri(_file.Path, UriKind.RelativeOrAbsolute),
musicTags.Title,
musicTags.Artist,
musicTags.Album,
null));
}
}
Когда вы запускаете приложение и нажимаете кнопку воспроизведения, запрограммированная музыка воспроизводится нормально, но когда я нажимаю кнопку импорта, приложение вылетает. Есть идеи, что здесь не так?
Ps. Извините за плохой английский.
1 ответ
Windows Phone BackgroundAudioPlayer
API предшествует WinRT StorageFolder
API и, следовательно, он не работает с этими типами файлов (но все еще доступен для бэк-компата). BackgroundAudioPlayer
(и поэтому AudioTrack
) предназначен для воспроизведения URL-адресов и файлов HTTP из локальной изолированной папки. Посмотрите это пошаговое руководство MSDN для получения дополнительной информации.
Обратите внимание, что вы не можете использовать XNA-based MediaLibrary
API-интерфейсы либо для реализации собственного фонового аудиоплеера. Предполагается, что пользователь будет использовать встроенный музыкальный проигрыватель для воспроизведения этих файлов.