就想京东这样 可以清除缓存

- 发布:2019-05-20 13:17
- 更新:2021-06-22 17:19
- 阅读:5571
请问uniapp清除缓存用什么方法啊?


张西西 - 123
// 清除缓存
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()
})
}
},