我正在将 Windows Phone 7.8 应用程序从 Windows Phone 8.1 Silverlight 迁移到 - 最终可能迁移到 Windows Phone 10..
但现在我被困在一个琐碎的事情上,根本没有让后台音频播放器在 Windows Phone 8.1 Silverlight 中工作。这可能是显而易见的——但经过几天的实验,我的想法已经不多了。
会发生什么是我收到错误消息
System.InvalidOperationException:E_FAIL -2146233079
从播放器设置音轨时。
基本代码片段
public partial class MainPage : PhoneApplicationPage
{
BackgroundAudioPlayer player;
Uri _trackUri;
Uri _albumArtUri;
string _trackUriString = "http://podcast.cbc.ca/mp3/hourlynews.mp3";
string _albumArtUriString = "http://www.cbc.ca/podcasting/images/promo-hourlies.jpg";
string _trackAlbum = "Album - Podcast news";
string _trackArtist = "Artist - CBC";
string _trackTitle = "Track title - Hourly news";
string _tag = "testtag";
public MainPage()
{
InitializeComponent();
}
private void PhoneApplicationPage_Loaded(object sender, RoutedEventArgs e)
{
player = BackgroundAudioPlayer.Instance;
_trackUri = new Uri(_trackUriString, UriKind.Absolute);
_albumArtUri = new Uri(_albumArtUriString, UriKind.Absolute);
}
private void SetTrack_button_Click(object sender, RoutedEventArgs e)
{
player.Track = createTrack(); // player gets error after this statement
}
private AudioTrack createTrack()
{
return new AudioTrack(_trackUri, _trackTitle, _trackArtist, _trackAlbum, _albumArtUri, _tag, EnabledPlayerControls.All);
}
我在 VisualStudio 2015 社区解决方案中使用内置模板创建了两个 Silverlight 8.1 项目。是的,背景音频项目是从主程序中引用的。项目链接
为了检查我的理智,我以类似的方式使用 VS12 Express创建了一个 WP7.8 项目(项目链接)。并从 VS15 端复制代码。该应用程序运行良好。
想法赞赏 - 非常