2013-07-02 99 views
3

我加载到OSmdroid相同的瓷砖(Mapbox),但知道当我修改它在网络上,它改变了我的应用程序,但前地图仍然留在缓存中,并被替换由新地图一点一点地。我如何清除OSMdroid缓存

我想知道如何以编程方式删除缓存,以便它可以正常加载图块。

我已经得到了代码,就在这里加载:

private void loadMap() { 
    String html = "http://a.tiles.mapbox.com/v3/myUsername.map-f1rhoycw/"; 
    String name = "500x300"; 
    XYTileSource freemap = new XYTileSource(name, null, 0, 16, 256, ".png", html); 
    map.setTileSource(freemap); 
    mapController = map.getController(); 

    mapController.setZoom(16); 

    map.setMultiTouchControls(true); 

} 
+0

你解决你的问题?我有同样的问题,我认为我应该删除缓存文件夹,但也许有更好的解决方案? – scana

+0

不,我没有找到任何东西,但没想到,我回到了旧的谷歌地图。 – Tsunaze

+0

我的问题是动态切换两个地图,但我发现该名称指定了保存地图的文件夹,所以我刚刚使用了两个不同的名称。 解决你的情况的唯一方法(我知道你说过从来没有想过:))是让应用程序检查什么是当前版本的地图,并相应地改变他们的名字。 – scana

回答

0

试试这个:

mMapView.getTileProvider().clearTileCache() 
+1

这对我不起作用。我改变了瓷砖的结构并做了这个,但它仍然在我看过的地图区域显示旧的缓存瓷砖。 –