Куда сохранять файлы в приложениях iOS 5?

#iphone #ios #objective-c #caching #ios5

#iPhone #iOS #objective-c #кэширование #ios5

Вопрос:

Я слышал, что Apple изменила некоторые вещи, касающиеся управления памятью в iOS 5. Итак, где лучше всего сохранить данные приложения и файлы в моем новом приложении iOS 5 — без потери данных?

Ответ №1:

Я считаю, что вы можете сохранять данные в Caches каталогах или Documents или tmp . Первые 2 фактически поддерживаются (т. Е. Резервное копирование данных) iTunes автоматически при подключении к нему.

Например, этот код обращается к Caches каталогу —

 NSArray *cachesDirList = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
NSString *cacheDir = [cachesDirList objectAtIndex:0];
  

Вы можете поэкспериментировать с любым Documents или tmp аналогичным способом. Надеюсь, это поможет…

Комментарии:

1. небольшая опечатка вместо myPathList Я думаю, вы имеете в виду cachesDirList в строке 2.

Ответ №2:

Чтобы добавить к тому, что сказал @Srikar, сохраняйте данные в кэшах только в том случае, если вы можете их восстановить. Было обнаружено, что когда на устройстве не хватает памяти, он очищает каталог кэша приложения. Это было подтверждено в различных сообщениях в блогах и разработчиками.

Ответ №3:

если это iOS5, используйте только iCloud. Для локального хранилища iOS sandbox не сильно изменился, NSDocumentsDirectory (резервная копия которого хранится в iTunes).