, iCloud. "" "" Ubiquity. . , syncCloud. "" , "" . , iCloud , iCloud. , , , Xcode , "Trigger iCloud Sync".
@property (strong, nonatomic) NSMetadataQuery *query;
-(void) init
{
self.query = [[NSMetadataQuery alloc] init];
[[NSNotificationCenter defaultCenter] addObserver: self
selector: @selector(didFinishMetadataQuery)
name: NSMetadataQueryDidFinishGatheringNotification
object: self.query];
}
-(void) didFinishMetadataQuery
{
[self.query stopQuery];
for(NSMetadataItem *item in self.query.results)
{
[[NSFileManager defaultManager] setAttributes: @{NSFileModificationDate:[NSDate date]}
ofItemAtPath: [[item valueForAttribute: NSMetadataItemURLKey] path]
error: nil];
}
}
-(void) syncCloud
{
[self.query setSearchScopes:@[NSMetadataQueryUbiquitousDataScope]];
[self.query setPredicate:[NSPredicate predicateWithFormat:@"%K like 'receipt*'", NSMetadataItemFSNameKey]];
dispatch_async(dispatch_get_main_queue(), ^{
BOOL startedQuery = [self.query startQuery];
if (!startedQuery)
{
NSLog(@"Failed to start query.\n");
return;
}
});
}