-1
存儲下載圖像的最佳方式是哪種?從那裏我應該可以在我的應用程序的任何地方使用它們,並且在任何情況下都不應刪除圖像(如低空間)。請任何幫助。在iOS中存儲下載圖像的最佳方式
存儲下載圖像的最佳方式是哪種?從那裏我應該可以在我的應用程序的任何地方使用它們,並且在任何情況下都不應刪除圖像(如低空間)。請任何幫助。在iOS中存儲下載圖像的最佳方式
根據標準,應用程序相關文件(數據)只需要存儲在文檔目錄中。一旦圖像獲得下載將該圖像存儲在文檔目錄中併爲圖像識別保持唯一的名稱。
-(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]];
請看image caching library。我使用了它很多次,它非常有用
感謝您的評論,如文件的目錄,我看像一些應用中的一些事情都得到了由存儲documentsdirectory數據被拒絕,因爲有些問題的iCloud會這樣... – user2361155
我不這麼認爲。可能是該應用程序有其他問題。由於這個原因,App Store永遠不會拒絕。 – Ganapathy
我建議將圖像存儲在_cache_中 - 或者至少提及該選項,尤其是如果應用程序的意圖是不吃設備的可用空間。 – holex