Windows 10 通用应用的文件/目录访问
从 WPF 迁移到 Windows 通用应用后,对应用存储空间之外的文件和目录的访问权限受到限制。
Directory.Exists 方法不可用
UWP 应用不支持 Directory.Exists 方法。
访问应用存储空间之外的文件
默认情况下,UWP 应用只能访问特定目录和文件:
- 在清单文件中声明的目录
- 通过 FileOpenPicker 或 FolderPicker 用户选择的目录
- 来自 FutureAccessList 或 MostRecentlyUsedList 的文件
- 通过文件扩展名关联或共享打开的文件
解决方案
使用 FutureAccessList 和 FolderPicker:
- 在应用清单中声明 "futureAccessList" 功能。
- 使用 FolderPicker 允许用户选择目录。
- 将目录添加到 FutureAccessList。
授予广泛的文件系统访问权限(Windows 10 版本 17134 及更高版本):
- 在应用清单中声明 "broadFileSystemAccess" 功能。
- 将应用提交到应用商店进行审核。
- 如果获得批准,应用将根据用户同意获得对整个文件系统的访问权限。
附加说明:
- FutureAccessList 方法在应用重启后仍然有效。
- "broadFileSystemAccess" 功能授予广泛的访问权限,因此需要额外的审查和运行时用户同意。
- 应用必须能够应对访问被拒绝的情况。
以上是通用 Windows 平台 (UWP) 应用程序如何访问其存储之外的文件和目录?的详细内容。更多信息请关注PHP中文网其他相关文章!