我按照 Apple Docs NSMetadataQuery 中的描述使用来搜索我的 iCloud 文件。我只有一个文件,而且我知道它的名称。我的问题是有时这个文件不存在(我猜是因为它还没有被下载)并且 NSMetadataQuery 无法找到它。
曾经尝试过强制下载,NSFileManager startDownloadingUbiquitousItemAtURL:error:
但它返回了一个错误。(阅读编辑)
我的解决方案是我第一次创建文件,然后我猜它存在,我用 UIDocument 打开它。但它不可能存在,或者它可能是用户第一次打开应用程序。我不能确定这些事情。我的第一个问题是:如果 UIDocument 打开文件,这意味着它在某处找到了该文件。如果文件不存在,它如何使用该文件?
然后,第二个问题:如果我的应用程序必须管理多个文件或名称未知的文件。如果 NSMetadataQuery 不起作用,我该如何找到它们。
编辑:
如果startDownloadingUbiquitousItemAtURL
应该用于开始下载文件,我怎么知道文件何时完成下载(可能带有通知)?但是,更重要的是:如果总是说(删除原始名称),我该如何下载文件?
Error Domain=NSPOSIXErrorDomain Code=2 "The operation couldn’t be completed.
No such file or directory" UserInfo=0x166cb0 {
NSDescription=Unable to get real path for Path
'/private/var/mobile/Library/Mobile Documents/teamid~com~team~app/Documents/file.extension'
}