1. 准备工作
1.1 添加依赖
1 | 在pubspec.yaml文件下添加 |
1 2 | dependencies: path_provider: ^1.6.9 |
1.2 安装
1 | 如果保存了有自动执行则最好,如果没有那么在终端运行flutter packages get命令 |
1.3 导入
1 | import 'package:path_provider/path_provider.dart'; |
2. 方法
2.1 获取临时文件路径(IOS和安卓通用)
1 2 | // 获取不会备份并且随时会被删除的临时目录(IOS和安卓通用) getTemporaryDirectory().then((value) => print(value)); |
2.2 获取应用支持目录(IOS和安卓通用)
1 2 | // 用于存储应用支持的目录 这个目录对于用户是不可见的 (IOS和安卓通用) getApplicationSupportDirectory().then((value) => print(value)); |
2.3 获取应用文件目录(IOS和安卓通用)
1 2 | // 用于放置用户生成的数据或不能有应用程序重新创建的数据 用户不可见(IOS和安卓通用) getApplicationDocumentsDirectory().then((value) => print(value)); |
2.4 获取应用持久存储目录路径(仅IOS可用)
1 2 | // 应用程序可以存储持久化、备份和用户不可见的文件的目录路径 getLibraryDirectory().then((value) => print(value)); |
2.5 获取外部存储目录(仅安卓可用)
1 2 | // 获取外部存储目录 用户可见 getExternalStorageDirectory().then((value) => print(value)); |
2.6 获取外部存储目录列表(仅安卓可用)
1 2 3 | // 可以存储应用程序特定数据的目录 // 这些路径通常驻留在外部存储上 用户可见 如单独的分区或SD卡(可以有多个 所以是列表) getExternalStorageDirectories().then((value) => print(value)); |
2.7 获取外部缓存目录(仅安卓可用)
1 2 3 | // 可以存储应用程序特定外部存储数据的目录 // 这些路径通常驻留在外部存储上,如单独的分区或SD卡(可以有多个 所以是列表) getExternalCacheDirectories().then((value) => print(value)); |
2.8 获取下载目录(仅桌面可用 安卓和IOS报错)
1 2 | // 获取下载路径 getDownloadsDirectory().then((value) => print(value)); |