dispose method

  1. @override
Future<void> dispose()
override

Release the controller.

Implementation

@override
Future<void> dispose() async {
  _isNeedDisposed = true;
  if (!_isDisposed) {
    await _release();
    // Unregister from the event dispatcher.
    if (_playerId != null) {
      VodEventDispatcher.instance.unregisterPlayer(_playerId!);
    }
    _changeState(TXPlayerState.disposed);
    _isDisposed = true;
    _stateStreamController.close();
    _eventStreamController.close();
    _netStatusStreamController.close();
  }

  super.dispose();
}