如何清除OSMdroid缓存

4

我将相同的瓦片(Mapbox)加载到OSmdroid中,但是当我在Web上对其进行修改时,它会在我的应用程序中发生更改,但以前的地图仍然保留在缓存中,并逐渐被新地图替换。

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

我已经得到正确加载它的代码:

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);

}

你解决了你的问题吗?我有同样的问题,我认为我应该删除缓存文件夹,但也许有更好的解决方案? - scana
我没有找到任何东西,但没关系,我回到了好用的谷歌地图。 - Tsunaze
我的问题是动态切换两个地图,但我发现名称指定了地图存放的文件夹,所以我只使用了两个不同的名称。 解决你的情况的唯一方法(我知道你已经说过不要紧 :)) 是让应用程序检查当前地图版本并相应地更改它们的名称。 - scana
解决方案在这里:https://stackoverflow.com/a/55909807/8313316 - Gregory
1个回答

0

试试这个:

mMapView.getTileProvider().clearTileCache()

1
这对我没起作用。我更改了瓦片源并进行了操作,但在我查看过的地图区域仍显示旧的缓存瓦片。 - Tom Kincaid

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接