empty
//在Adapter缓存
Glide.with(context).load(list.get(i)
.getMiddle_image().getUrl())
.placeholder(R.mipmap.ic_launcher)
.error(R.drawable.h)
.diskCacheStrategy(DiskCacheStrategy.SOURCE)
.into(holder.img);
holder.img.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(context,Main2Activity.class);
context.startActivity(intent);
}
});
//Main2Activity
public class Main2Activity extends AppCompatActivity {
private TextView clear;
private TextView num;
String formatSize;
String old;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
clear = (TextView) findViewById(R.id.clear);
num = (TextView) findViewById(R.id.num);
try {
formatSize= getFormatSize(getFolderSize(new File(Main2Activity.this.getCacheDir() + "/" + InternalCacheDiskCacheFactory.DEFAULT_DISK_CACHE_DIR)));
num.setText(formatSize);
} catch (Exception e) {
e.printStackTrace();
}
clear.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
try {
if (Looper.myLooper() == Looper.getMainLooper()) {
new Thread(new Runnable() {
@Override
public void run() {
Glide.get(Main2Activity.this).clearDiskCache();
// BusUtil.getBus().post(new GlideCacheClearSuccessEvent());
try {
old= getFormatSize(getFolderSize(new File(Main2Activity.this.getCacheDir() + "/" + InternalCacheDiskCacheFactory.DEFAULT_DISK_CACHE_DIR)));
} catch (Exception e) {
e.printStackTrace();
}
}
}).start();
} else {
Glide.get(Main2Activity.this).clearDiskCache();
}
num.setText(old);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
public String getCacheSize(Context context) {
try {
return getFormatSize(getFolderSize(new File(context.getCacheDir() + "/"+ InternalCacheDiskCacheFactory.DEFAULT_DISK_CACHE_DIR)));
} catch (Exception e) {
e.printStackTrace();
}
return "";
}
private long getFolderSize(File file) throws Exception {
long size = 0;
try {
File[] fileList = file.listFiles();
for (File aFileList : fileList) {
if (aFileList.isDirectory()) {
size = size + getFolderSize(aFileList);
} else {
size = size + aFileList.length();
}
}
} catch (Exception e) {
e.printStackTrace();
}
return size;
}
private static String getFormatSize(double size) {
double kiloByte = size / 1024;
if (kiloByte < 1) {
return size + "Byte";
}
double megaByte = kiloByte / 1024;
if (megaByte < 1) {
BigDecimal result1 = new BigDecimal(Double.toString(kiloByte));
return result1.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString() + "KB";
}
double gigaByte = megaByte / 1024;
if (gigaByte < 1) {
BigDecimal result2 = new BigDecimal(Double.toString(megaByte));
return result2.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString() + "MB";
}
double teraBytes = gigaByte / 1024;
if (teraBytes < 1) {
BigDecimal result3 = new BigDecimal(Double.toString(gigaByte));
return result3.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString() + "GB";
}
BigDecimal result4 = new BigDecimal(teraBytes);
return result4.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString() + "TB";
}
}
//Main2Activity布局文件
Glide的缓存图片,清除缓存
最新推荐文章于 2021-05-29 09:16:40 发布