2013-05-22 4 views
3

전체 웹 페이지를 다운로드하고이를 응용 프로그램의 문서 디렉토리에 저장하고 다음에 사용자가 방문 할 때 캐시에서로드해야합니다.ios에서 전체 웹 페이지 다운로드 및 캐시

검색 횟수에 상관없이 항상 ASIWebPageRequest ..으로 끝납니다. !! 아주 오래되어서 비추천 적이기는하지만, 나는 대안을 찾고 있습니다. 나는 그것을 피하려고 노력하고 또 다른 이유는 때문에 ....

그것은 매우 낮은 수준의 구조 (CFNetwork에서)를 기반으로 완전히 재 구현 URL 로딩 시스템. 따라서 Apple은 그들의 고급 라이브러리 (NSURLConnection, NSCache)를 개선함으로써 ASIHTTP는 이러한 진보를 얻지 못합니다.

따라서, 나는 그것은 나에게 내가 그것을 먹이 중 URL의 NSData을 제공,이 sample code from apple을 시도했다. 하지만 NSDataUIWebView에로드하려고하면 loadData:MIMEType:textEncodingName:baseURL: 메서드를 사용하여 mimetype을 "text/html"로 지정해야합니다. 이제 웹 페이지의 이미지와 링크가로드되지 않습니다 ..!

달성하기 위해 사용할 수있는 다른 방법이 있습니까? 아마도 NSURLCache ..을 사용하고 있을까요? 그러나 어떻게? 내가 사용할 수있는 다른 좋은 라이브러리가 있습니까, 아니면 ASIWebPageRequest ..와 붙어 있습니까?

가 참고로, 내가 ASI의 대안에 대해 CSS 등 모든 JS와

+0

당신은 이것을 사용할 수 있습니다 .. http://stackoverflow.com/questions/1162295/library-for-caching-web-pages-on-iphone –

+1

이것은 당신의 문제의 해결책을 가진 또 다른 튜토리얼입니다 http : //www.cocoawithlove .com/2010/09/substituteuting-local-data-for-remote.html –

+2

@AhmedZ. iOS 5 이후,'NSURLCache'는 캐시 된 내용을'http'에 대한 파일 시스템에 저장할 수 있습니다. 내가 링크 한 기사는 iOS 4 이하의 해결 방법입니다. –

답변

-1

을 전체 웹 페이지를 다운로드 할 필요가 AFNetworking 지금은 훨씬 더 인기가있다. 콘텐츠를 캐시하려는 경우 NSURLCacheStoragePolicyNSURLCache을 확인해야합니다.

+0

NSURlCache를 조사해 보았지만, 내가 원하는 것을 달성하는 방법을 정확히 이해할 수는 없습니다 ..! 당신이 조금 더 설명 할 수 있다면 좋을 것입니다. – akshaynhegde

+0

AFNetworking을 복제하고 약간의 샘플 코드를 읽는 것이 좋습니다. –

관련 문제