I am using the SDWebImage library to cache web images in my app:
https://github.com/rs/SDWebImage/blob/master/README.md
Current Usage:
The problem with SDImageCache's aging (which now has a setter: maxCacheAge) is that SDWebImage never really proactively does anything with it. You need to invoke cleanDisk yourself at some point to purge old data from the cache. Note: SDWebImage does invoke cleanDisk when the app terminates, but apps are not guaranteed to get a termination notification from the OS.