2013-07-03 3 views
-1

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

ответ

0

В соответствии со стандартом файлы, связанные с приложением (данные), должны храниться только в каталоге документов. Как только изображение загрузится, сохраните его в каталоге документов и сохраните уникальное имя для идентификации изображения.

-(NSString *)writeDataAsFile:(NSData *)imageData 
{ 

    NSArray * paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString * documentsDirectory = [paths objectAtIndex:0]; 
    NSString * thumbNailFilename = [NSString stringWithFormat:@"%@.png",[self GetUUID]]; // Create unique iD 
    NSString * thumbNailAppFile = [documentsDirectory stringByAppendingPathComponent:thumbNailFilename]; 

    if ([imageData writeToFile:thumbNailAppFile atomically:YES]) 
    { 
     return thumbNailFilename; 
    } 

    return nil; 
} 

Этот метод используется для хранения изображения (загруженного NSData) в каталоге документов.

Получить изображение из каталога документов, как это

UIImage *thumbnailHomeImage = [UIImage imageWithContentsOfFile:[[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0] stringByAppendingPathComponent:@"%@",imageName]]; 
+0

спасибо за ваш комментарий, я прочитал некоторые вещи, как некоторые приложения заводятся отвергнуты хранением данных в documentsdirectory, потому что некоторые ICloud вопрос это так ... – user2361155

+0

Я так не думаю. Может быть, у приложения есть и другие проблемы. Магазин приложений никогда не будет отклоняться по этой причине. – Ganapathy

+0

Я бы рекомендовал вместо этого сохранить изображения в _cache_ или, по крайней мере, упомянуть этот параметр, особенно если намерение приложения не есть свободное пространство устройства. – holex

-1

взгляните на это image caching library. ive использовал его довольно много раз, его действительно полезно

Смежные вопросы