私のアプリでは、ユーザーは 700*700MB の画像をアップロードおよびダウンロードできます。これらの画像はダウンロードされ、いくつかの UIImageView に表示されます。私のアプリ自体は非常に小さいですが、Documents & Data フォルダは 17GB など巨大で、指数関数的に増加し続けています。私のアプリは iPad と iPhone の両方で動作します。iPad の docs & data フォルダは 6 MB で、iPod では 17 GB です。アプリ パッケージをダウンロードしたところ、tmp フォルダーが巨大であることがわかりました。1GBのスタックログファイルがいくつかあります。問題が NSTemporarydirectory に関連していることがわかりました。
この方法で画像を保存します:
NSString *title = [[NSUserDefaults standardUserDefaults]objectForKey:@"Folder3"];
PhotoiPhoneViewController* sharedSingleton = [PhotoiPhoneViewController sharedManager];
NSString *destDir = [[NSUserDefaults standardUserDefaults]objectForKey:@"Folder2"];
NSString *filename3 = [NSString stringWithFormat:@"%@%@sizefile.pages.%@", destDir, title, sharedSingleton.tagString];
NSString *SizePath = [NSTemporaryDirectory() stringByAppendingPathComponent:[NSString stringWithFormat:@"%@sizefile.pages.%@", title, sharedSingleton.tagString]];
[self.restClient loadFile:filename3 intoPath:SizePath];
これは正しい方法ですか、それとも使用する必要がありますか:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *CommentPath = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@commentfile.txt.%ld", title, (long)sharedSingleton.tagNumber]]
使用後はファイルを削除してほしいので、NStemporaryDirectoryは使用後すぐに削除されると思っていました。私は何をすべきか??