如何在 UWP 应用程序中播放 .mp3(或其他)文件?

How play a .mp3 (or other) file in a UWP app?

我试试这个:

PlayMusic = new MediaElement();
PlayMusic.AudioCategory = Windows.UI.Xaml.Media.AudioCategory.Media;

PlayMusic.Source = new Uri(@"C:\Users\UserName\Desktop\C:\Users\user\Desktop\Kill The Alarm - Begin Again.mp3");
PlayMusic.Play();

显示屏上不再显示错误消息(try catch 运行干净)。

抱歉描述太短了... 我能很好地阅读和理解英语,但我很难说和写。

注册 MediaElement 的 MediaFailed-Event 并检查它是否被引发。传递给该方法的 ExceptionRoutedEventArgs 应包含有关无法播放文件的原因的信息。

您不能像这样使用 windows 存储应用程序读取文件系统上的任何文件。

如果你只是想测试一下:

  1. 将文件添加到 Visual Studio
  2. 中的项目
  3. 将文件的 "Build Action" 更改为 "Content"。
  4. 将 "Copy to Output Directory" 更改为 "Copy Always"。

您可能想要执行的操作在 读取本地文件 w/o 来自 this article. This 的选择器 部分也有帮助。

每个 Windows Store App 都有三个文件夹。本地文件夹、漫游文件夹和临时文件夹。每个都以相同的方式访问。 Local 旨在将资产存储在本地的、特定于应用程序的文件夹中。

答案如下:

StorageFolder Folder = Windows.ApplicationModel.Package.Current.InstalledLocation;
                Folder = await Folder.GetFolderAsync("MyFolder");
                StorageFile sf = await Folder.GetFileAsync("MyFile.mp3");
                PlayMusic.SetSource(await sf.OpenAsync(FileAccessMode.Read), sf.ContentType);
                PlayMusic.Play();

MfG.

将 mySong.mp3 放入您的 Assets 文件夹中。然后在 Visual Studio 中,右键单击您的 Assets 文件夹并 select "add existing item"。从您的资产文件夹中添加 mySong.mp3。 在XAML中,添加一个玩家:

 <MediaElement x:Name="myPlayer"
 AutoPlay="True" />

在 c# 中,mySong.mp3 将在您设置源时播放:

 Uri newuri = new Uri("ms-appx:///Assets/mySong.mp3");
 myPlayer.Source = newuri;