项目中用Glide,非常强大的库,谁用谁知道。
公司项目里面图片比较多,也使用了Glide的本地缓存,因此时间长了会产生很多图片缓存,强大的Glide也提供了相应的API來清除缓存,首先要获取缓存大小,
@Nullable
public static File getPhotoCacheDir(@NonNull Context context) {
return getPhotoCacheDir(context, DEFAULT_DISK_CACHE_DIR);
}
getPhotoCacheDir()是获取缓存文件夹,有默认的文件名称,默认最大缓存为250M
int DEFAULT_DISK_CACHE_SIZE = 250 * 1024 * 1024;
String DEFAULT_DISK_CACHE_DIR = "image_manager_disk_cache";
/**
* Clears disk cache.
*
* <p>
* This method should always be called on a background thread, since it is a blocking call.
* </p>
*/
// Public API.
@SuppressWarnings({"unused", "WeakerAccess"})
public void clearDiskCache() {
Util.assertBackgroundThread();
engine.clearDiskCache();
}
这是清除本地缓存的方法,注释说明需要放在子线程进行。
Glide.getPhotoCacheDir(this);
Glide.get(this).clearDiskCache();
此文是基于Glide 4.7.1