Я пытаюсь работать с NSMetadataQuery в проекте C++\Qt, и мне удалось его скомпилировать и запустить, но я получаю только уведомление NSMetadataQueryDidStartGatheringNotification.
Я видел много вопросов по этой проблеме, но ни один из них не работал у меня.
В проекте есть (пока) 3 файла:
main.cpp
AppController.h
AppController.m
вот фрагмент соответствующего кода: http://pastebin.com/g4cKYPkm
Я написал это дважды, эта версия является копией пасты из примера Apple «прожектор» за вычетом кода, необходимого для графического интерфейса (мой проект является консольным проектом), и оба раза я получил один и тот же результат.
Во многих ответах говорится, что мне нужно запустить 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, но не повезло :(