Я пытаюсь работать с NSMetadataQuery в проекте C ++ \ Qt, и я получил его для компиляции и запуска, но я получаю только NSMetadataQueryDidStartGatheringNotification.
Я видел много вопросов по этому вопросу, но ни один из них не помог мне.
Проект имеет (на данный момент) 3 файла:
main.cpp
AppController.h
AppController.m
вот фрагмент соответствующего кода:
http://pastebin.com/g4cKYPkm
Я написал это дважды, эта версия является копией вставки из примера Apple «Spotlighter» за вычетом кода, необходимого для графического интерфейса пользователя (мой проект — консольный проект), и оба раза я получал один и тот же результат.
Во многих ответах говорится, что мне нужно запустить startQuery в mainThread, у меня есть только один поток, и я использовал [NSThread isMainThread], чтобы проверить, действительно ли я работаю на mainThread.
Я добавил цикл сразу после вызова startQuery
//Psuedo code
while query.isGathering == YES {
print query.isStarted
print query.isGathering
print query.isStopped
print query.operationQueue.operationCount
print query.resultCount
wait 10sec
}
и я получаю, что запрос запущен, он собирается, он не останавливается, и результат, и размер очереди равны 0.
Есть идеи, что я делаю не так? Есть идеи, как еще проанализировать проблему? благодарю вас.
РЕДАКТИРОВАТЬ: я работаю с Qt Creator, я попробовал тот же код с XCode, но не повезло 🙁
Задача ещё не решена.