UIWebView가 정상적인 방법으로 요청을로드 할 때 이미지를 포함하여 캐시 할 가능성이 가장 높습니다. 사람들이 자신의 카메라 롤에 저장할 이미지를 선택하길 원합니다.NSURLCache에서 이미지를 검색하는 방법이 있습니까?
이 시점에서 사용자가 UIWebView 내에서 탭한 이미지의 URL을 감지 할 수 있습니다. 저의 무지한 대답은 NSURLConnection을 사용하여 이미지를 다운로드하는 것이지만 이미지가 이미 다운로드되어 캐시에 이미 저장되어 있기 때문에 잘못된 느낌이 들게됩니다. 이미지가 이미 캐싱되어 있는지 확인하고 두 번 이미지를 다운로드하는 대신 이미지를 가져 오는 방법이 있습니까?
내가 이렇게 같은 NSCachedURLResponse 얻기 위해 노력 :NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://upload.wikimedia.org/wikipedia/commons/thumb/6/64/Collage_of_Six_Cats-02.jpg/250px-Collage_of_Six_Cats-02.jpg"]];
NSCachedURLResponse *response = [[NSURLCache sharedURLCache] cachedResponseForRequest:request];
을하지만 '응답이'지속적으로 전무하다는 것을 그냥 캐시되지 않습니다 의미는 무엇입니까?
편집 :
요청에 사용 :
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
그것은 유효한 응답을 반환하지합니다. 그러나 요청에 동일한 URL을 사용하면 나 자신을 만들면 다시 nil을 반환합니다. 혼란 스럽습니다.
문제의 원인을 모르지만 SDUrlCache (https://github.com/rs/SDURLCache)라는 라이브러리를 사용하여 계정을 고려합니다. 어쩌면 당신의 버그는 iOS가 메모리 내 캐시만을 사용한다는 사실과 관련이 있습니다. – Piotr
@ 여기에 어떤 업데이트가 있습니까? – aherlambang