Flutter 颤振载荷屏幕,直到返回数据

Flutter 颤振载荷屏幕,直到返回数据,flutter,dart,asynchronous,async-await,permissions,Flutter,Dart,Asynchronous,Async Await,Permissions,我正在我的应用程序中使用以获得用户通知权限。这是我获取状态的方式: Future<NotificationPermissionStatus> getNotificationPermStatus() { return Permission.notification.status.then( (status) { switch (status) { case PermissionStatus.denied:

我正在我的应用程序中使用以获得用户通知权限。这是我获取
状态的方式:

Future<NotificationPermissionStatus> getNotificationPermStatus() {
    return Permission.notification.status.then(
      (status) {
        switch (status) {
          case PermissionStatus.denied:
            return NotificationPermissionStatus.DENIED_FROM_SETTINGS;
          case PermissionStatus.granted:
            return NotificationPermissionStatus.GRANTED_FROM_SETTINGS;
          case PermissionStatus.restricted:
            return NotificationPermissionStatus.UNKNOWN;
          case PermissionStatus.limited:
            return NotificationPermissionStatus.UNKNOWN;
          case PermissionStatus.permanentlyDenied:
            return NotificationPermissionStatus.UNKNOWN;
        }
      },
    );
  }
目标:

在屏幕上显示加载指示器,直到
getNotificationPermStatus()已完成。如果完成,则隐藏加载指示器,并设置permissionStatus=getNotificationPermStatus()

我尝试在我的
init
中使用
async
await
,但这是不允许的(对于flatter来说是非常新的)。这里怎么走?如果你需要更多信息,请告诉我

  @override
  initState() {
    super.initState();
    _permissionStatus = getNotificationPermStatus();
    WidgetsBinding.instance!.addObserver(this);
  }