当我点击按钮时,我正在尝试播放声音文件。该文件位于Assets文件夹中,构建操作设置为content。我尝试了以下方法:
选项1:
element.Source = new Uri("ms-appx:///Assets/alarm.wav");
选项2:
Windows.Storage.StorageFolder folder = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFolderAsync("Assets");
Windows.Storage.StorageFile file = await folder.GetFileAsync("alarm.wav");
var stream = await file.OpenAsync(Windows.Storage.FileAccessMode.Read);
element.SetSource(stream, file.ContentType);
第二个选项有效,但单击按钮时声音播放需要很长时间。根据其他问题,第一个选项应该有效,但声音没有播放,也没有例外。
有什么建议吗?
编辑:
我正在使用Xamarin模板进行跨平台开发。所以我有以下结构:
使用DependencyService我尝试在每个平台上播放声音,但使用App.UWP选项1不起作用。
答案 0 :(得分:0)
你可以这样试试
Uri uri = new Uri(AppDomain.CurrentDomain.BaseDirectory + "Assets/alarm.wav");
var player = new MediaPlayer();
player.Open(uri);
player.Play();