0

我有一个适用于 iCloud 的应用程序——我可以毫无问题地创建、保存和编辑文件。

我遇到的问题是在其他设备上全新安装该应用程序。由于它是全新安装的,因此无处不在的文件夹存在,但其中没有任何内容。我想知道如何在远程iCloud 文件夹中搜索新安装的应用程序,该应用程序与将文档存储在云上的原始应用程序具有相同的帐户和文件名。

我知道有这个功能:

[NSFileManager defaultManager] setUbiquitous: itemAtURL:destinationURL: error:

并且 'setUbiquitous' 可以设置为 NO,itemAtURL 是 iCLoud 远程 URL,destinationURL 是 [[NSFileManager defaultManager] URLForUbiquityContainerIdentifier:nil] 返回的文件路径

但是我如何获得 itemAtURL,这听起来像是一个远程 URL?或者这是错误的函数调用?

更新:这是我的查询功能

NSMetadataQuery *tmpQuery = [[NSMetadataQuery alloc] init]; _query = tmpQuery;

[tmpQuery setSearchScopes:[NSArray arrayWithObjects: NSMetadataQueryUbiquitousDocumentsScope, nil]];
NSPredicate *tmpPred = [NSPredicate predicateWithFormat:@"%K == %@", NSMetadataItemFSNameKey, inDocName];
[tmpQuery setPredicate:tmpPred];

// we must add this so that we know when the query has completed
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(queryDidFinishGathering:) name:NSMetadataQueryDidFinishGatheringNotification object:_query];

static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{

    [[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(iCloudQueryDidUpdate:)
                                                 name:NSMetadataQueryDidUpdateNotification
                                               object:_query];

});


[tmpQuery startQuery];

我想这可能是我正在测试的方式。如果我从我的设备中删除应用程序,然后进入设置 > iCloud 并删除文档,我似乎也在从 iCloud 服务器中删除它们。会是这样吗?

4

0 回答 0