无法在WP81 Silverlight中获取背景音频

时间:2015-10-03 15:47:07

标签: silverlight windows-phone-8 background-audio

我正在将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项目。是的,背景音频项目是从主程序引用的。 link to project

为了检查我的理智,我以类似的方式创建了一个使用VS12 Express的WP7.8项目(link to project)。并从VS15端复制代码。该应用程序工作正常。

赞赏的想法 - 非常

1 个答案:

答案 0 :(得分:1)

好吧,终于开始更多地研究这个问题了..那就是......答案......简单明了:不支持这种方式......在this link他们说

  

“不支持AudioPlayerAgent和AudioStreamingAgent   Silverlight 8.1应用程序

     

AudioPlayerAgent和AudioStreamingAgent   类,支持Windows Phone 8的背景音频播放   Silverlight 8.1不支持应用程序。如果你想支持   后台音频播放,可以继续使用Windows Phone 8   应用或创建支持新背景的Windows Phone应用商店应用   音频API。“

就是这样...... :(