When we're testing apps, we often see ones that download duplicate HTTP objects. By "duplicate content" we mean:
Couple of ways to come at this one...
On the client:
We've also found that many applications repeatedly download files and data, even when there are no changes to the files. Since many developers are using content that has been optimized for the mobile web, the content is already populated with the caching headers required. In this case, a local cache for the application must be invoked.
Caching is an important tool for the mobile developer.
Believe it or not, even a 4kb image can make a huge difference. Let's say your app has 5,000 users (congrats, by the way). If they have to download a single 4kb image twice each session, it means 19MB of needless data sent to your users. And that means using the radio power to drain more than a third of a Samsung Captivate battery.
To cache effectively, your content needs headers. This change has to be made at the server level. If you're ready to implement a caching regime, it's important to think about your content's lifespan.
Once you determine the appropriate timings, you can add the right headers.
Want to learn more about managing Caching? Read our Best Practices document: Top Radio Resource Issues in Mobile Application Development and have some fun playing the game below:
What would happen if your user reacted the same way as an app that doesn't cache its data? As the forecast stays the same, he'll load up multiple shirts and get awfully warm on a sunny day.