You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

iOS 11使用UIDocument创建文档时出现URL访问权限错误

iOS 11 UIDocument save() 抛出权限错误但文件创建成功的问题解析

我之前在做iOS11适配时碰到过一模一样的情况,先给你吃个定心丸:这个错误只是iOS 11系统内部的一个无关报错,完全不会影响你的文件创建、读写逻辑。

问题原因

这个错误来自NSFileProviderInternalErrorDomain,本质是iOS11在引入文件提供者框架(File Provider Framework)等新特性时,内部权限检查逻辑出现了一个小bug。当你直接使用UIDocument的save()方法保存到Documents目录时,系统会错误地触发一轮不必要的权限校验,但实际上你的App对Documents目录拥有完全的读写权限——这一点从文件能成功创建就能直接证明。

结合你的场景验证

  • 你没有使用UIDocumentBrowserViewController,所以和文档浏览器相关的配置(比如UISupportsDocumentBrowser键)完全不相关,添加它自然解决不了问题;
  • 你已经配置了正确的UTI,且AirDrop传输能正常触发App打开,说明UTI的配置没有问题;
  • iOS10完全无此错误,进一步坐实了这是iOS11的专属系统问题。

处理建议

  1. 直接忽略日志:既然不影响功能,这个错误日志完全可以不用管;
  2. 过滤特定错误:如果看着日志闹心,可以在代码里针对这个错误做过滤。比如在save()的回调里,或者通过监听错误日志的方式,忽略NSFileProviderInternalErrorDomain且Code=1的错误;
  3. 升级系统版本:这个问题在iOS12及以上版本已经被苹果修复,用户升级系统后就不会再看到这个错误了。

你的代码逻辑是完全正确的,不用因为这个错误日志修改核心逻辑~

内容的提问来源于stack exchange,提问作者HuaTham

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 06:45:10