2009-01-02 4 views
5

documentation indique simplement que la mise setAutosavingDelay à tout> 0 sur le contrôleur de document partagé devrait le faire, mais après avoir appeléCocoa NSDocument: obtenir AutoSave travailler

[[NSDocumentController sharedDocumentController] setAutosavingDelay:2.0]; 

dans mon contrôleur, AutoSave ne semble pas fonctionner : Je ne vois rien dans ~/Library/Autosave Information/, ni

[[[NSDocumentController sharedDocumentController] currentDocument] autosavedContentsFileURL] 

initialisé.

Notez que dans mon application, le chargement normal et l'enregistrement fonctionnent bien (keyedarchivers, classe basée sur nscoding pour mes documents, etc.).

+0

Juste comme une vérification de santé mentale, vous avez fait une modification au document ainsi il y avait quelque chose à enregistrer automatiquement? (et voir ce que -hasUnautosavedChanges rapports) –

+0

et votre NSDocument retour oui pour autosavesInPlace? – Stephan

Répondre

7

Avez-vous remplacé -updateChangeCount: pas du tout? Je suis à peu près certain que l'implémentation d'Apple est le code qui démarre la minuterie d'autosave. Aussi, que faire si vous expérimentez avec une minuterie plus longue?

+0

Merci. Je n'ai pas. Je vais essayer et revenir. – taco

2

Certaines personnes trouvent que le répertoire ~/Library/Autosave Information est détenu par root, et les fichiers ne peuvent donc pas être écrits dedans. Voir par exemple http://discussions.apple.com/thread.jspa?threadID=2252306

Je ne sais pas comment le bug se pose mais j'été mordu par elle - le répertoire a été créé 2010-06-17 12:19 et je suppose que les autorisations ont eu tort de ce moment-là.

Questions connexes