uniapp 清除缓存
//清除所有数据 clearAppUserData() { plus.android.importClass("android.app.ActivityManager"); var Context = plus.android.importClass("android.content.Context"); var am = plus.android.runtimeMainActivity().getSystemService(Context.ACTIVITY_SERVICE); am.clearApplicationUserData(); }, // 计算缓存 getStorageSize() { console.log(123) let that = this; plus.cache.calculate(function(size) { console.log(456) 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) + "K"; } else if (sizeCache < 1073741824) { that.fileSizeString = (sizeCache / 1048576).toFixed(2) + "M"; } else { that.fileSizeString = (sizeCache / 1073741824).toFixed(2) + "G"; } console.log('========', that.fileSizeString) }); }, //清除缓存 clearCache() { console.log(123) 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"); console.log('files', files) 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: 'Android缓存清理完成', duration: 3000 }); that.formatSize(); // 重新计算缓存 }, function(e) { console.log(e.message) }); } else { entry.remove(); } }, function(e) { console.log('文件路径读取失败') }); } } else { // ios plus.cache.clear(function() { uni.showToast({ title: 'H5缓存清理完成', duration: 2000 }); that.formatSize(); }); } },
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通