Search code examples
iphonearchivenskeyedarchiver

Location for archiving on iPhone


I'm looking to archive some nested NSDictionary objects to be able to use the data in them at next start. To do so I was going to use [NSKeyedArchiver archiveRootObject: toFile: ] but was not sure where to put the file. In the archiving docs, the examples put the file in NSTemporaryDirectory() but for persistent data, a temporary directory does not seem to make much sense. I've had a look around but can't find where would be the best place to put it unless NSDocumentDirectory is for use by apps for this kind of thing?


Solution

  • You have two options for persistent file storage:

    • NSDocumentDirectory if you want files to be backed up by iTunes
    • NSCachesDirectory if you don't want to backup those files to improve device synchronizing time or for some other reasons - e.g. some files that can be easily recreated when needed