path_provider

pub package

A Flutter plugin for finding commonly used locations on the filesystem. Supports Android, iOS, Linux, macOS and Windows. Not all methods are supported on all platforms.

AndroidiOSLinuxmacOSWindows
SupportSDK 16+9.0+Any10.11+Windows 10+

Usage

To use this plugin, add path_provider as a dependency in your pubspec.yaml file.

Example

Directory tempDir = await getTemporaryDirectory();
String tempPath = tempDir.path;

Directory appDocDir = await getApplicationDocumentsDirectory();
String appDocPath = appDocDir.path;

Supported platforms and paths

Directories support by platform:

DirectoryAndroidiOSLinuxmacOSWindows
Temporary✔️✔️✔️✔️✔️
Application Support✔️✔️✔️✔️✔️
Application Library❌️✔️❌️✔️❌️
Application Documents✔️✔️✔️✔️✔️
External Storage✔️❌️❌️
External Cache Directories✔️❌️❌️
External Storage Directories✔️❌️❌️
Downloads✔️✔️✔️✔️

Testing

path_provider now uses a PlatformInterface, meaning that not all platforms share a single PlatformChannel-based implementation. With that change, tests should be updated to mock PathProviderPlatform rather than PlatformChannel.

See this path_provider test for an example.