NSURLSessionDownloadTask を使用してファイルをダウンロードしています。ダウンロードされて保存されます。データを正常に表示できます。
残念ながら、テストする iOS シミュレーターしかありません。Xcode の停止ボタンでアプリを閉じるとどうなりますか。次に再起動すると、ファイルはもう存在しません。
しかし、アプリから削除して閉じた場合。cmd + shift + H を 2 回クリックしてリストを実行します。アプリをタップして再起動します。シミュレーターで。ファイルを見つけました。
BOOL found = [[NSFileManager defaultManager] fileExistsAtPath:path];
これはシミュレーターの問題ですか?実際のデバイスでは心配する必要はありませんか?
実際、私はiPhoneでテストすることができました。全く同じ挙動!! どんな説明でも。
NSURLSessionDownloadTask
保存する宛先を返す宛先ブロックを送信した でこれを呼び出します。
- (NSURLSessionDownloadTask *)downloadTaskWithRequest:(NSURLRequest *)request
progress:(NSProgress * __autoreleasing *)progress
destination:(NSURL * (^)(NSURL *targetPath, NSURLResponse *response))destination
completionHandler:(void (^)(NSURLResponse *response, NSURL *filePath, NSError *error))completionHandler
宛先ブロック コード:
NSURL *documentsDirectoryURL = [[NSFileManager defaultManager] URLForDirectory:NSLibraryDirectory inDomain:NSUserDomainMask appropriateForURL:nil create:NO error:nil];
return [documentsDirectoryURL URLByAppendingPathComponent:[response suggestedFilename]];