首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在windows phone 8.1上播放音乐

问在windows phone 8.1上播放音乐
EN

Stack Overflow用户
提问于 2016-01-24 15:54:23
回答 2查看 74关注 0票数 0

我试着把所有的音乐文件放到列表框中,然后播放选定的文件。

下面的代码是我用来播放音乐的,但不幸的是它不能播放。谁能告诉我这个错误是什么?

代码语言:javascript
复制
private async void button1_Click(object sender, RoutedEventArgs e)
{
    StorageFolder folder = Windows.Storage.KnownFolders.MusicLibrary;
    IReadOnlyList<StorageFile> files = await folder.GetFilesAsync();

    foreach (var file in files)
    {
        MusicProperties music = await file.Properties.GetMusicPropertiesAsync();

        listBox2.Items.Add(music.Title);       
    }
}

private async void listBox2_Tapped(object sender, TappedRoutedEventArgs e)
{
    try
    {
        StorageFolder folder = Windows.Storage.KnownFolders.MusicLibrary;
        IReadOnlyList<StorageFile> files = await folder.GetFilesAsync();

        if (files.Count > 0)
        {
            var file = files[listBox2.SelectedIndex];
            mediaElement1.Source = new Uri(files[listBox2.SelectedIndex].Path);
            textBlock1.Text = files[listBox2.SelectedIndex].Path;

            mediaElement1.Play();
        }
    }
    catch(Exception ex)
    {
        textBlock1.Text = ex.Message;
    }
}
EN

回答 2

Stack Overflow用户

发布于 2016-01-24 16:26:42

取而代之的是mediaElement1.Source = new Uri(files[listBox2.SelectedIndex].Path);你需要使用下面的代码:

代码语言:javascript
复制
        var fileStream = await file.OpenReadAsync();
        mediaElement.SetSource(fileStream, file.ContentType);
票数 0
EN

Stack Overflow用户

发布于 2016-01-26 12:13:20

您需要在后台任务中使用BackgroundMediaPlayer。

MSDN

你可以为Windows phone8.1编写在后台播放音频的应用程序。这意味着,即使用户按下设备上的后退按钮或开始按钮离开了你的应用程序,你的应用程序也可以继续播放音频。

背景音频播放场景包括:

长时间运行的播放列表用户简单地调出一个前台应用程序来选择并启动播放列表,之后用户期望播放列表继续在后台播放。

使用任务切换器用户短暂地调出一个前台应用程序开始播放音频,然后使用任务切换器切换到另一个打开的应用程序。用户希望音频在后台继续播放。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34973421

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档