Apple Docs NSMetadataQuery で説明されているように、iCloud ファイルを検索するために使用しました。私はファイルを 1 つしか持っておらず、その名前を知っています。私の問題は、このファイルが存在しない場合があり (まだダウンロードされていないためだと思います)、NSMetadataQuery がそれを見つけることができないことです。
ダウンロードを強制しようとしたNSFileManager startDownloadingUbiquitousItemAtURL:error:
ことがありますが、エラーが返されます。(編集を読む)
私の解決策は、最初にファイルを作成し、それが存在すると推測し、UIDocument で開くことです。しかし、存在しないか、ユーザーが初めてアプリを開いた可能性があります。私はこれらのことについて確信が持てません。私の最初の質問は、UIDocument がファイルを開く場合、それはファイルがどこかに見つかったことを意味します。ファイルが存在しない場合、どのようにファイルを使用できますか?
次に、2 番目の質問: 複数のファイルまたは名前が不明なファイルを管理する必要があるアプリの場合。NSMetadataQuery が機能しない場合、どうすればそれらを見つけることができますか?
EDIT: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'
}