예제 #1
0
 public void Stop()
 {
     _handler.Post(() =>
     {
         try
         {
             if (_player != null)
             {
                 IsPlaying = false;
                 _player.RemoveListener(this);
                 _player.Release();
                 StateChanged?.Invoke(this, EventArgs.Empty);
             }
         }
         catch (Exception ex)
         {
             Android.Util.Log.Warn(TAG, $"Error during stop of player: {ex.Message}");
             Android.Util.Log.Debug(TAG, ex.ToString());
         }
         finally
         {
             _player = null;
         }
     });
 }
예제 #2
0
 protected override void OnCleanUp(ElementChangedEventArgs <VideoView> e)
 {
     base.OnCleanUp(e);
     timerIsRunning = false;
     player.RemoveListener(this);
     player.Release();
 }
예제 #3
0
        private void RemovePlayerListeners()
        {
            player.RemoveListener(this);
            player.RemoveTextOutput(this);
#pragma warning disable CS0618 // Type or member is obsolete
            player.RemoveMetadataOutput(this);
            player.RemoveVideoDebugListener(this);
#pragma warning restore CS0618 // Type or member is obsolete
        }