I really love that GCDroid caches map tiles. I currently have over 3 GB of map tiles cached in my phone, which is quite a lot.
The downside is of course the size of the data. I would suggest saving a timestamp of when each tile was last used, and an option to (automatically, or manually) remove tiles not accessed in X days. I figure X would be useful as anything between 30 and 500 days.
Customer support service by UserEcho