У меня возникла проблема, которая печатает это сообщение журнала, когда я запускаю приложение
<NSMetadataQuery: 0x6000000f1200> is being deallocated without first calling -stopQuery. To avoid race conditions, you should first invoke -stopQuery on the run loop on which -startQuery was called
этот мой запрос medatadata
@property (strong) MetadataQuery *query;
self.query = [[MetadataQuery alloc] init];
self.query.sortDescriptors = @[[[NSSortDescriptor alloc] initWithKey:(id)kMDItemFSName ascending:YES]];
self.query.predicate = SearchPredicateForType(type);
self.query.delegate = self;
self.query.searchScopes = @[_searchURL.absoluteString];
self.query.notificationBatchingInterval = 10.0;
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(metadataQueryDidFinishGathering_Notification:) name:NSMetadataQueryDidFinishGatheringNotification object:self.query];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(metadataQueryDidUpdate_Notification:) name:NSMetadataQueryDidUpdateNotification object:self.query];
для dealloc
[self.query disableUpdates];
[self.query stopQuery];
(void)metadataQueryDidFinishGathering_Notification:(NSNotification *)note {
NSLog(@"type %@", @(_type));
NSMetadataQuery *q = note.object;
if(![q.searchScopes containsObject:_searchURL.absoluteString]) {
NSLog(@"MISMATCH %@ %@", q.searchScopes, _searchURL);
// return;
}
[q disableUpdates];
[q stopQuery];
[self getTotalSizeOfQuery];
}
Возможно, мне не хватает чего-то, кто поможет мне разобраться в этом
Любая помощь очень ценится.