AFNetworking バージョン 2.5 を使用しています。以下に私の問題を説明しました。前もって感謝します。
私の問題:
デバッグすると、AFNetworking がイメージをダウンロードしてディスクに保存することがわかります。再起動後、イメージのキャッシュはディスクに残りますが、NSCache からは返されません。
アプリはメモリ警告も受信せず、キャッシュも自動的にクリアしないことに注意してください。再起動するたびに、ファインダーからファイルをチェックして、それらがすべて残っていることを確認しますが、AFNetworking はキャッシュからファイルを受信できず、再度ダウンロードします。
「UIImageView+AFNetworking.m」の行の下では、nil が返されます。
return [self objectForKey:AFImageCacheKeyFromURLRequest(request)];
私のコード:
NSURL *imageURL = [NSURL URLWithString:facility.image.list.original];
NSMutableURLRequest *imageURLRequest = [NSMutableURLRequest requestWithURL:imageURL];
[imageURLRequest addValue:@"image/*" forHTTPHeaderField:@"Accept"];
[cell.image setImageWithURLRequest:imageURLRequest placeholderImage:nil success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image) {
if (request)
{
[UIView transitionWithView:cell.image
duration:0.2f
options:UIViewAnimationOptionTransitionCrossDissolve
animations:^{[cell.image setImage:image];}
completion:NULL];
}
else
{
[cell.image setImageWithURL:imageURL];
}
} failure:nil];