start method

  1. @override
Future<void> start(
  1. BoatConfig config
)
override

Implementation

@override
Future<void> start(BoatConfig config) async {
  _state = BoatState.starting;
  _listenEvents();
  _listenCapture();
  try {
    await methodsChannel.invokeMethod<void>('start', config.toMap());
    _state = BoatState.running;
  } catch (e) {
    // Clean up subscriptions before rethrowing — native never started
    // successfully, so the event streams are dead weight.
    await _cancelSubs();
    _state = BoatState.error;
    rethrow;
  }
}