Windows Phone:可以将隔离存储路径转换为文件系统中的绝对路径"normal"?



我注意到,我可以通过代码访问的几乎所有音频播放器(XNA MediaPlayer和BackgroundAudioPlayer)都需要在特定位置的文件-它们只是无法播放,没有任何错误消息。

因此,我可以将文件复制到IsolatedStorage,现在我再次需要一个正常路径(正常路径意味着在文件系统上完全限定它的路径:一个绝对路径,这样我就可以在上面使用system.IO.file)。

这可能吗?如果可能,怎么做?

(我想将该路径提供给Microsoft.Xna.Framework.Media.MediaPlayer,希望它可以从该位置播放,因为它似乎无法从任意位置播放。)

您看过MediaElement吗?(System.Windows.Controls.MediaElement)您可以使用IsolatedStorageFileStream:设置控件的源

using (var isoStorage = IsolatedStorageFile.GetUserStoreForApplication())
{
      if (isoStorage.FileExists(strFilename))
      {
          IsolatedStorageFileStream isoAudioFile = IsolatedStorageFileStream(strFilename, FileMode.Open, FileAccess.Read, isoStorage);
          medAudioPlayer.SetSource(isoAudioFile);                     
      }
}

medAudioPlayer是您的MediaElement。

注意:这适用于Windows Phone 8.1 Silverlight应用程序。不确定它是否在通用应用程序中可用。

相关内容

最新更新