views:

926

answers:

1

Is there a library or framework that I can use to cache web pages locally for offline viewing on iPhone? If not, what's the best strategy for doing so?

Currently what I'm thinking of doing is downloading the HTML, harvesting its URLs, caching those URLs, then rewriting the HTML to point to local files. Is that the best way to do it?

Thanks!

+3  A: 

Take a look at Apple's sample code. Specifically, a program called URLCache

http://developer.apple.com/iphone/library/samplecode/URLCache/index.html

Description

URLCache is a sample iPhone application that demonstrates how to download a resource off the web, store it in the application's data directory, and use the local copy of the resource. URLCache also demonstrates how to implement a couple of caching policies:

  • The local copy of a web resource should remain valid for a period of time (for example, one day) during which the web is not re-checked.

  • The HTTP header's Last-Modified date should be used to determine the last time a web resource changed before re-downloading it.

The audience for this sample is iPhone developers using resources such as images that are retrieved or updated from the web.