Как кешировать данные в ios - PullRequest
       23

Как кешировать данные в ios

2 голосов
/ 14 сентября 2010

Я загрузил данные XML (включая изображения, текст, ...) с сервера и отобразил эти данные на экране iphone.

Как я могу кешировать данные для повторной загрузки этого экрана, когда я посещаю этот экран в другой раз. Это будет быстрее. (не нужно снова загружать данные XML)?

Спасибо.

Ответы [ 2 ]

3 голосов
/ 06 марта 2013

Использовать EGOcache API. Просто импортируйте файл EGOCache.h в свой класс

- (void)setObject:(id<NSCoding>)anObject forKey:(NSString*)key;
-(void)setObject:(id)anObject forKey:(NSString*)key withTimeoutInterval:(NSTimeInterval)timeoutInterval;
-(id)objectForKey:(NSString*)key;

Используйте первый метод для установки ваших данных с помощью кнопки. Если вы хотите установить время кэширования, используйте второй метод.

Редактировать

EGOCache сохранит ваши данные навсегда, см. здесь , чтобы узнать об использовании NSCache, который включает в себя различные политики автоматического удаления.

0 голосов
/ 14 сентября 2010

вы можете сохранить сам файл XML в папке с документами (или какой-либо подпапке) после загрузки данных с сервера. Если вы проанализировали XML-файл в массивах и словарях, вы можете преобразовать данные в plist-файл и сохранить их на своем iphone. Посмотрите на метод NSData:

- (BOOL) writeToFile: (NSString*)path  atomically: (BOOL)useAuxiliaryFile;
...