Ho un oggetto conforme al protocollo NSFilePresenter che rappresenta il mio pacchetto di documenti dell'applicazione basato su documenti. Quando un nuovo file viene creato all'interno del pacchetto, programmaticamente utilizzando NSFileManager con i metodi NSFileCoordination appropriati o tramite Finder ho solo l'evento -presentedSubitemDidChangeAtURL:
, ma non sembra così ovvio in questo caso -presentedSubitemDidAppearAtURL:
.NSFilePresenter -presentedSubitemDidAppearAtURL: il metodo non viene mai chiamato
È un comportamento previsto o sto facendo qualcosa di sbagliato?
I commenti su -presentedSubitemDidAppearAtURL:
in NSFilePresenter stato chiaro:
Notifica che è stato aggiunto un file o una directory contenuta dalla directory. Se questo metodo non è implementato ma è
-presentedItemDidChange
e la directory è in realtà un pacchetto di file, la macchina di coordinamento file invierà invece-presentedItemDidChange
.
Suppongo che tu non abbia implementato '-presentedItemDidChange'? – charles
[Here] (http://www.objc.io/issue-10/icloud-document-store.html) è un bel post relativo a questo problema, e la mia conclusione è; Non utilizzare 'NSFilePresenter'. – Eonil
GCD sembra essere la strada da percorrere. [Gestione degli eventi del file system con GCD] (http://www.davidhamrick.com/2011/10/10/handling-filesystem-events-with-gcd.html) – Eonil