Example #1
0
        void UpdateSession()
        {
            var stateBuilder = new PlaybackStateCompat.Builder().SetActions(AvailableActions);



            Console.WriteLine("************");
            Console.WriteLine("***************");
            Console.WriteLine($"Media player: Playback State: {StateIsPlaying}/{IsPlaying} - position {Position}");
            Console.WriteLine("***************");
            Console.WriteLine("******");

            var favIcon            = Parent.CurrentSong?.Rating > 1 ? Resource.Drawable.ic_star_on : Resource.Drawable.ic_star_off;
            var customActionExtras = new Bundle();

            //TODO: run through wearables
            stateBuilder.AddCustomAction(
                new PlaybackStateCompat.CustomAction.Builder("THUMBSUP", "FAVORITE", favIcon).SetExtras(customActionExtras).Build());
            stateBuilder.SetState(State, Position, 1f, SystemClock.ElapsedRealtime());

            MusicService.Shared.Session.SetPlaybackState(stateBuilder.Build());

            if (State == PlaybackStateCompat.StatePlaying || State == PlaybackStateCompat.StatePaused)
            {
                MusicService.Shared.MediaNotificationManager.StartNotification();
            }
        }