Flutter – save file to download folder – downloads_path_provider

path_provider will probably undergo some changes soon, there are some open issues:

https://github.com/flutter/flutter/issues/35783

As of right now, the best way to get the download path on an Android device is to use:

/storage/emulated/0/Download/

No (s) needed.

And to get the external dir path in Android:

/storage/emulated/0/

The “emulated” word does not mean it’s the emulator path, it’s just a naming convention.

Make sure you have permission to write to the file, add this to manifest.xml file, right under <manifest tag:

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

and also request permission at run time.

See https://pub.dev/packages/permission_handler

Leave a Comment