getDynamicDirectoryPermission static method

Future<bool?> getDynamicDirectoryPermission({
  1. bool grantWritePermission = true,
})

Request the user for access to Directory Permission of User choice

Returns bool.

Implementation

static Future<bool?> getDynamicDirectoryPermission(
    {bool grantWritePermission = true}) async {
  try {
    const kOpenDocumentTree = 'openDocumentTree';
    const kGrantWritePermission = 'grantWritePermission';
    const kInitialUri = 'initialUri';

    String initialUri = makeUriString();

    final args = <String, dynamic>{
      kGrantWritePermission: grantWritePermission,
      kInitialUri: initialUri
    };
    final selectedDirectoryUri = await kDocumentFileChannel
        .invokeMethod<String?>(kOpenDocumentTree, args);
    if (selectedDirectoryUri != null) return true;
    return false;
  } catch (e) {
    return null;
  }
}