Bor*_*mov 1 background-music media-player audio-player windows-phone windows-phone-8.1
我为Windows Phone 8.1开发了音乐应用程序.我使用BackgroundTask并访问手机音乐库.应用程序在具有虚拟SD卡的模拟器上工作正常,但在设备上不起作用.在设备上尝试播放时,会发生错误:
Failed with error code System.UnauthorizedAccessException: Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))
Run Code Online (Sandbox Code Playgroud)
此问题代码,发生错误.为简单城市放置在前台应用程序中的代码:
BackgroundMediaPlayer.Current.SetUriSource(new Uri("C:\\Data\\Users\\Public\\Music\\Ballroom\\Juan Camus - Now That The Love's Gone.mp3"));
BackgroundMediaPlayer.Current.Play();
Run Code Online (Sandbox Code Playgroud)
有谁知道如何解决这个问题?
小智 5
当指向未与应用程序打包的文件时,使用后台任务中的SetUriSource不起作用.如果要播放用户库或SD卡中的文件,则需要使用SetFileSource或SetStreamSource.您可以通过调用StorageFile.GetFileFromPathAsync(path)从路径获取文件.
不幸的是,这没有记录,所以很多人可能会遇到这种情况(特别是因为该示例使用了SetUriSource).更糟糕的是,当从VS部署时,使用SetUriSource 可以在模拟器中工作,甚至可以在手机上工作.但它在提交到商店时停止工作.所以人们会很晚才知道他们的应用程序不起作用......
| 归档时间: |
|
| 查看次数: |
283 次 |
| 最近记录: |