2013-07-02 98 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

這對我不起作用。我改變了瓷磚的結構並做了這個,但它仍然在我看過的地圖區域顯示舊的緩存瓷磚。 –