#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).