コード例 #1
0
        public override Uri MapUri(Uri uri)
        {
            if (PodcastHelper.HasPodcastUri(uri))
            {
                BackgroundAudioPlayer bap = BackgroundAudioPlayer.Instance;
                var action = PodcastHelper.RetrievePodcastAction(uri);

                switch (action.Command)
                {
                case PodcastCommand.Launch:
                    // Do nothing.
                    break;

                case PodcastCommand.Pause:
                    if (bap.CanPause)
                    {
                        bap.Pause();
                    }
                    break;

                case PodcastCommand.Play:
                    if (bap.PlayerState != PlayState.Playing)
                    {
                        PodcastPlaybackManager.getInstance().startDefaultBehaviorPlayback();
                    }
                    break;

                case PodcastCommand.SkipNext:
                    if (bap.PlayerState == PlayState.Playing)
                    {
                        bap.SkipNext();
                    }
                    break;

                case PodcastCommand.SkipPrevious:
                    if (bap.PlayerState == PlayState.Playing)
                    {
                        bap.SkipPrevious();
                    }
                    break;
                }

                return(new Uri("/Views/MainView.xaml", UriKind.Relative));
            }
            // Otherwise perform normal launch.
            return(uri);
        }
コード例 #2
0
 public override Task next()
 {
     player.SkipNext();
     return(AsyncTasks.Noop());
 }