easy_folder_picker 1.2.1 icon indicating copy to clipboard operation
easy_folder_picker: ^1.2.1 copied to clipboard

Easy directory picker for Flutter, you can choose directory or create directory for further action

Easy Folder Picker #

Easy directory picker for Flutter


A flutter package to pick directories and handles requesting required permissions as well. This package only supports ANDROID.

Picker Screenshot1 Picker Screenshot2

Installation #

Add below line to your pubspec.yaml and run flutter packages get

  easy_folder_picker: ^latest version

Permissions #

Add below line to your android/app/src/main/AndroidManifest.xml

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

If you want to allow creating new folders directly from picker then add the below permission also

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

Android 10 (Q) #

In Android 10, you need to add the Following Lines in AndroidManifest file:


Android 11 #

From Android 11, you need to manage permission within your app, if you want to write in different folders of external storage.


  1. Add the following Lines in AndroidManifest file
  <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"/>
  1. Add device_info package to check android version
  2. Check permission if app can manage external storage if its android 11 or greater Note: This is a runtime permission (might not show it in app info's permission section )
  var status = await Permission.manageExternalStorage.status;
      if (status!.isRestricted) {
        status = await Permission.manageExternalStorage.request();

      if (status!.isDenied) {
        status = await Permission.manageExternalStorage.request();
      if (status!.isPermanentlyDenied) {
          backgroundColor: Colors.green,
          content: Text('Please add permission for app to manage external storage'),

Flutter Usage #

import 'package:easy_folder_picker/FolderPicker.dart';

// In any callback call the below method
  Future<void> _pickDirectory(BuildContext context) async {
    Directory directory = selectedDirectory;
    if (directory == null) {
      directory = Directory(FolderPicker.ROOTPATH);

    Directory newDirectory = await FolderPicker.pick(
        allowFolderCreation: true,
        context: context,
        rootDirectory: directory,
        shape: RoundedRectangleBorder(
            borderRadius: BorderRadius.all(Radius.circular(10))));
    setState(() {
      selectedDirectory = newDirectory;
pub points


unverified uploader

Easy directory picker for Flutter, you can choose directory or create directory for further action

Repository (GitHub)
View/report issues


Icon for licenses.unknown (LICENSE)


flutter, path, permission_handler


Packages that depend on easy_folder_picker