我正在尝试使用带有完成处理程序的open函数来打开UIDocument。我已经按照Apple粒子示例以及其他地方的示例对代码进行了建模。似乎完成处理程序内部的代码未执行。见下文,我有一份关于成功的书面陈述,一份关于失败的陈述。我也没看过。
var document: ConsumedRDocument?
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
document?.open(completionHandler: { (success) in
if success {
print("success in opening")
self.consumedR = self.document?.consumedR
} else {
print("error in opening")
}
})
}
在我的项目属性中,我将“支持文档浏览器”和“支持在适当位置打开文档”都设置为是。
我想念什么?
基于评论,我添加了以下内容以简单地检查是否为零。
if document != nil {
print("not nil")
} else {
print("nil")
}
它返回的文档不是nil。
我注意到以下内容有些奇怪。
我尝试打开的文件已从分发包移至documents目录。 (这些是用户的示例文件。)设置断点,可以按以下方式获取文件的URL(移动后):
file:///var/mobile/Containers/Data/Application/6A79D37D-86BE-4C75-A57E-3742974C8065/Documents/name.consumed
尝试打开文档并在document..open语句之前中断之后,我可以得到document.fileURL的值如下:
file:///private/var/mobile/Containers/Data/Application/6A79D37D-86BE-4C75-A57E-3742974C8065/Documents/name.consumed
注意添加“私有”。我想知道我从捆绑销售商品中搬迁是否是造成地址差异的原因,并且是问题的原因。