Flutter插件之path_provider

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));

插件的内容较少,使用也比较简单,仅仅只是用于获取路径,并没有操作文件和目录的功能,因此,需要搭配Director和File等进行操作。