Afin de surveiller les changements de fichiers dans mon conteneur iCloud, je me suis inscrit pourPourquoi NSMetadataQueryDidUpdateNotification est-il appelé plusieurs fois rapidement?
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(processiCloudUpdates:)
name:NSMetadataQueryDidUpdateNotification
object:nil];
Idéalement, chaque fois que je reçois le message que les mises à jour ont été faites, je voudrais ouvrir chacun de mes UIDocs et contrôle si les paramètres ont été modifiés. Ce serait bien, si NSMetadataQueryDidUpdateNotification
a été appelée seulement une fois. Cependant, il est lancé plusieurs fois (je n'ai pas oublié removeObserver
etc. et j'ai plusieurs instances en cours d'exécution), et il serait donc très difficile de charger tous les fichiers à chaque fois que la notification de mise à jour est lancée (si j'avais 5 fichiers et cela s'appelle 4 fois, j'ouvrirais 20 UIDocs en succession rapide). Par exemple, cela se produit si je mettre à jour un fichier (et seulement un seul fichier dans mon conteneur omniprésent):
2012-07-05 10:51:39.565 Meernotes[7842:707] ... NSMetadataQuery update
2012-07-05 10:51:42.468 Meernotes[7842:707] ... NSMetadataQuery update
2012-07-05 10:51:45.216 Meernotes[7842:707] ... NSMetadataQuery update
2012-07-05 10:51:47.036 Meernotes[7842:707] ... NSMetadataQuery update
est-il une autre façon de déterminer quand un fichier a changé? NSFileVersion n'a pas beaucoup aidé non plus.
Je pense que la question «Comment surveiller les changements dans l'iCloud? –