相关疑难解决方法(0)

iOS 11上的UIDocument创建:不允许读者访问该URL

从iOS 11开始,每次使用UIDocumentAPI 创建新文档时都会遇到以下错误:

[错误]无法获取项目/var/mobile/Containers/Data/Application/XXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXX/Documents/myDoc-XXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXX.myFile(n)的属性值.

错误:错误域= NSFileProviderInternalErrorDomain代码= 1
"不允许读者访问该URL."
UserInfo = {NSLocalizedDescription =不允许读者访问该URL.}

不同于类似的问题(1,2,3上SO)在此,我没有使用UIDocumentBrowserViewController.我只是创建一个UIDocument并自己调用save()Documents目录.我发现的最接近的问题用途UIManagedDocument.但是,就我而言,尽管出现错误消息,仍然可以成功创建和写入文件.

这是我保存例程的要点:

@IBAction func createDoc(_ sender: Any) {
    let uuid = UUID().uuidString
    let doc = Document(baseName: "myDoc-\(uuid)")
    doc.save(to: doc.fileURL, for: .forCreating) { (completed) in
        if (completed) {
            doc.close(completionHandler: nil)
            self.verifyNumberOfFiles()
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

UIDocument为了简化这个问题,我的子类也几乎是空白的:

class Document: UIDocument {    

    let fileExtension = "myFile"

    override …
Run Code Online (Sandbox Code Playgroud)

document-based uti ios uidocument ios11

12
推荐指数
1
解决办法
2069
查看次数

标签 统计

document-based ×1

ios ×1

ios11 ×1

uidocument ×1

uti ×1