2014-09-23 2 views
0

В моем приложении я должен использовать AudioPlaybackAgent (APA) и элемент мультимедиа. Я использовал АП, чтобы играть песни, и когда мне нужно играть видео, я использую MediaElementИспользование MediaElement вызывает ошибку «Ресурсы фонового звука больше недоступны».

Когда я перейти на страницу использовать MediaElement, я остановить BackgroundAudioPlayer:

BackgroundAudioPlayer.Instance.Pause(); 

Когда я вернуться обратно на страницу, которая должна воспроизводить музыку, я вызываю APA, чтобы начать заново, но теперь она возвращает исключение. «Фоновые аудиоресурсы больше недоступны». :(

protected override void OnNavigatedTo(NavigationEventArgs e) 
    {    
     base.OnNavigatedTo(e); 

     try 
     { 
      if (BackgroundAudioPlayer.Instance.PlayerState != PlayState.Playing) 
       BackgroundAudioPlayer.Instance.Play();     
     } 
     catch 
     { 
      BackgroundAudioPlayer.Instance.Play(); 
     } 
    } 

я могу использовать MediaPlayerLauncher, но это решение имеет много disvantage (только в полноэкранном режиме, отсутствие моего таможенного контроля ...). Так есть ли способ сделать медиа-элемент работы вместе с . AudioPlaybackAgent, или любой другой способ воспроизведения видео ???

+0

Вы следите за тем, чтобы e BackgroundAudioPlayer код на BackgroundAudioPlayer в какой-то момент попадает в 'NotifyComplete()'? BackgroundAudioPlayer может быть очень сложным иногда, и я думаю, что столкнулся с этой проблемой. Я не думаю, что это связано с навигацией по страницам. Если у вас есть какие-либо сомнения по поводу этого комментария, дайте мне знать. – Meneses

ответ

0

Это происходит потому, что данные теряются при переходе между страницами Вы можете попробовать сохранить данные в IsolatedStorage Вы можете найти более подробную информацию по этому вопросу:. Save values between page navigation in Windows Phone

+0

Я не думаю, что из-за утерянных данных при навигации мои данные (ссылки песни) моей фоновой музыки сохранены в изолированном хранилище, и он вызывает автоматический. Но когда я закрыл его для воспроизведения своего медиа-элемента, я не могу его вернуть (если я его закрыл, когда отключил приложение, а затем снова активировал приложение, он работал нормально) – user3448806

Смежные вопросы