如何清除MKMapView的地图图块缓存?

rad*_*ven 7 iphone caching mapkit mkmapview ios

我正在开发一个基于MKMapView的iPhone/iPad地图应用程序,它覆盖了我自己的基本底图,即使在用户离线且无法访问Google的地图图块服务器时也能提供一些有限的功能.

这个功能正在运行 - 但是我很难在每次新构建之后测试它,因为我找不到刷新/重置iOS地图图块缓存的方法.iOS缓存甚至可以在电源循环和iOS设备重启后幸存下来.我过去放大的任何地方都会使用先前测试会话中的内存中的切片进行渲染.

有没有办法强制iOS刷新其地图缓存?现在,我能想到的唯一选择是每次需要进行测试时重新刷新操作系统.

谢谢!

顺便说一句:这几乎是这个问题的重复,但在这种情况下,问题不是使用空缓存进行测试,而是释放内存.那里接受的答案集中在RAM问题上,而不是我在这里遇到的问题.

Fel*_*ino 5

NSURLConnection在创建任何实例之前,请尝试将缓存大小设置为零MKMapView

    NSURLCache *sharedCache = [[NSURLCache alloc] initWithMemoryCapacity:0 diskCapacity:0 diskPath:nil];
[NSURLCache setSharedURLCache:sharedCache];
[sharedCache release];
Run Code Online (Sandbox Code Playgroud)

这可能会使您的连接停止存储缓存数据,因为缓存剩余大小始终不足