I am working on an MKMapView based iPhone / iPad mapping app that overlays my own basic base map to provide for some limited functionality even when users are offline and can not reach Google's map tile server.
This functionality is working - but I am having a hard time testing it after each new build because I can't find a way to flush / reset the iOS map tile cache. The iOS cache even survives a power-cycle and reboot of the iOS device. Anywhere I have zoomed into in the past renders with the tiles in memory from the prior test session.
Is there a way to force iOS to flush its map cache? Right now the only alternative I can think of is to reflash the OS every time I need to do a test.
Thanks!
BTW: This is almost a duplicate of this question, but in that case the issue wasn't testing with an empty cache, but rather freeing up memory. The accepted answer given there focused on the RAM issue, not the same problem that I am having here.
Try setting NSURLConnection
cache size to zero before creating any instance of your MKMapView
NSURLCache *sharedCache = [[NSURLCache alloc] initWithMemoryCapacity:0 diskCapacity:0 diskPath:nil];
[NSURLCache setSharedURLCache:sharedCache];
[sharedCache release];
This might make your connections stop storing cached data as the cache remaining size will always be insufficient
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With