askPermission method Null safety

Future<void> askPermission(
  1. Future<bool?> onRationaleNotAvailable(
      )
    )

    Implementation

    Future<void> askPermission(
      Future<bool?> Function() onRationaleNotAvailable,
    ) async {
      final bool showRationale = await permission.shouldShowRequestRationale;
    
      if (showRationale) {
        _onNewPermissionStatus(await permission.request());
      } else {
        final bool? shouldOpenSettings = await onRationaleNotAvailable.call();
    
        if (shouldOpenSettings == true) {
          await openAppSettings();
          return checkPermission();
        }
      }
    }