uniapp清除应用缓存
发布时间: 2021-11-22 16:21:18
作者: 王乐园 浏览次数:
2023
1.怎么清除应用缓存? 2.清除应用缓存是否和手机系统中的应用管理缓存一样? 3.手机系统中的数据删除数据,有什么影响?
1.怎么清除应用缓存?
通常应用中会有 清除缓存的按钮,
计算缓存
// 计算缓存
formatSize() {
let that = this;
plus.cache.calculate(function(size) {
let sizeCache = parseInt(size);
if (sizeCache == 0) {
that.fileSizeString = "0B";
} else if (sizeCache < 1024) {
that.fileSizeString = sizeCache + "B";
} else if (sizeCache < 1048576) {
that.fileSizeString = (sizeCache / 1024).toFixed(2) + "KB";
} else if (sizeCache < 1073741824) {
that.fileSizeString = (sizeCache / 1048576).toFixed(2) + "MB";
} else {
that.fileSizeString = (sizeCache / 1073741824).toFixed(2) + "GB";
}
console.log('缓存大小',that.fileSizeString)
});
},
下面是清除缓存
// 清理缓存
clearCache() {
let that = this;
let os = plus.os.name;
if (os == 'Android') {
let main = plus.android.runtimeMainActivity();
let sdRoot = main.getCacheDir();
let files = plus.android.invoke(sdRoot, "listFiles");
let len = files.length;
for (let i = 0; i < len; i++) {
let filePath = '' + files[i]; // 没有找到合适的方法获取路径,这样写可以转成文件路径
plus.io.resolveLocalFileSystemURL(filePath, function(entry) {
if (entry.isDirectory) {
entry.removeRecursively(function(entry) { //递归删除其下的所有文件及子目录
uni.showToast({
title: '缓存清理完成',
duration: 2000
});
that.formatSize(); // 重新计算缓存
}, function(e) {
console.log(e.message)
});
} else {
entry.remove();
}
}, function(e) {
console.log('文件路径读取失败')
});
}
} else { // ios
plus.cache.clear(function() {
uni.showToast({
title: '缓存清理完成',
duration: 2000
});
that.formatSize();
});
}
},
2.清除应用缓存是否和手机系统中的应用管理缓存一样?
缓存作用简介
缓存指将数据存储在相对较高访问速度的存储介质中,以供系统处理。一方面缓存访问速度快,可以减少数据访问的时间,另一方面如果缓存的数据是经过计算处理得到的,那么被缓存的数据无需重复计算即可直接使用,因此缓存还起到减少计算时间的作用。
是一个储存器中的,实验发现如论先在app中程序清除,还是系统中的缓存清除,另一个缓存对象都会跟随一起被清空“图片缓存等”,那么得出结论是一样的储存。
3.手机系统中的数据删除数据,有什么影响?
手机系统中的应用管理和数据信息是有区别的,实验得出 先清除 缓存后,在数据大小中的值会跟着一起变化,得出数据中包括了缓存,但是数据中剩下的数据是什么呢?其实其中就有如APP的热更新的数据,用户登录信息等数据。
上一篇:(转载)追忆过往青春
下一篇:(转载)时光悠悠 岁月无言