Esempio n. 1
0
        private async Task RegisterSpotifyMediaSession(bool unmute)
        {
            if (SessionManager == null)
            {
                SessionManager = await GlobalSystemMediaTransportControlsSessionManager.RequestAsync();
            }
            List <GlobalSystemMediaTransportControlsSession> sessions = new List <GlobalSystemMediaTransportControlsSession>();

            sessions.Add(SessionManager.GetCurrentSession());
            sessions.AddRange(SessionManager.GetSessions());
            foreach (GlobalSystemMediaTransportControlsSession session in sessions)
            {
                if (session != null && session.SourceAppUserModelId == "Spotify.exe")
                {
                    Debug.WriteLine("Registering " + session.GetHashCode());
                    if (unmute)
                    {
                        AudioUtils.SetSpotifyMute(false);
                    }
                    SpotifyMediaSession = session;
                    SpotifyMediaSession.MediaPropertiesChanged += async(s, args) =>
                    {
                        await UpdateMediaInfo();
                    };
                    return;
                }
            }
            SpotifyMediaSession = null;
        }
 /**
  * Mutes/Unmutes Spotify.
  *
  * i: false = unmute, true = mute
  **/
 private void Mute(bool mute)
 {
     AudioUtils.SetSpotifyMute(mute);
     muted = mute;
 }