subscribeOperatingHand method

  1. @override
void subscribeOperatingHand(
  1. SubscribeOperatingHandOptions options
)
override

订阅操作手状态变化

Implementation

@override
void subscribeOperatingHand(SubscribeOperatingHandOptions options) {
  _currentOperatingOptions = options;

  _operatingEventSubscription ??= operatingEventChannel
      .receiveBroadcastStream()
      .listen(
        (dynamic event) {
          final status = event is int
              ? OperatingHandStatus.fromCode(event)
              : OperatingHandStatus.unknown;
          _currentOperatingOptions?.onChange(status);
        },
        onError: (Object error, StackTrace? stackTrace) {
          _notifyFail(
            options,
            _errorMessage(error, 'subscribeOperatingHand:fail'),
          );
        },
      );

  methodChannel
      .invokeMethod<void>('subscribeOperatingHand')
      .then((_) => _notifySuccess(options, 'subscribeOperatingHand:ok'))
      .catchError((Object error, StackTrace stackTrace) {
        _notifyFail(
          options,
          _errorMessage(error, 'subscribeOperatingHand:fail'),
        );
      });
}