下面的代码不起作用。
mapView.getTileProvider().clearTileCache();
有没有其他方法可以做到这一点?
我找到了我的问题的解决方案。通过源以找出执行后未清除缓存的原因
mapView.getTileProvider().clearTileCache();
我在以下位置找到了两个函数:
org.osmdroid.tileprovider.modules.SqlTileWriter.java
功能:
/* purges and deletes everything from the cache database */
public boolean purgeCache(){..}
和
/* purges and deletes all tiles from the given tile source name from the cache database */
public boolean purgeCache(String mTileSourceName){..}
删除特定切片源的缓存的示例:
SqlTileWriter sqlTileWriter = new SqlTileWriter();
boolean isCleared = sqlTileWriter.purgeCache(mapView.getTileProvider().getTileSource().name());