扑。 Future 应该等待回调

Flutter. Future should wait for callback

我正在Flutter中实现华为推送通知。 这里:https://pub.dev/packages/huawei_push/example

我希望能够有一种调用方式:

String? token = await PushNotificationsService().getPushNotificationsToken();

从我的代码中获得我自己的 class PushNotificationService() 获取令牌并 return 它。

我的问题是,对于华为,我需要在内部实现一些监听器 PushNotificationsService() class。

void _onTokenEvent(String event) {
    _token = event;
    showResult("TokenEvent", _token);
  }

  void _onTokenError(Object error) {
    PlatformException e = error as PlatformException;
    showResult("TokenErrorEvent", e.message!);
  }

...

Push.getTokenStream.listen(_onTokenEvent, onError: _onTokenError);

但是我应该如何设置我的 getPushNotificationsToken() ?我需要在其中 return 一个未来,但是如何处理 Future 以便只有在调用我的两个侦听器回调之一时才“触发”它?!

我确信这是一个基本的解决方案,但不幸的是我是 Flutter 的新手。

目前Flutter Push Kit插件只能通过事件监听获取token信息