網站首頁 編程語言 正文
app端獲取本地緩存,清除
// 獲取本地緩存大小
getStorageSize() {
let that = this;
plus.cache.calculate(function(size) {
let sizeCache = parseInt(size);
if (sizeCache == 0) {
that.currentSize = "0B";
} else if (sizeCache < 1024) {
that.currentSize = sizeCache + "B";
} else if (sizeCache < 1048576) {
that.currentSize = (sizeCache / 1024).toFixed(2) + "KB";
} else if (sizeCache < 1073741824) {
that.currentSize = (sizeCache / 1048576).toFixed(2) + "MB";
} else {
that.currentSize = (sizeCache / 1073741824).toFixed(2) + "GB";
}
});
},
// 清理緩存
clearStorage() {
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;
console.log(files, len)
for (let i = 0; i < len; i++) {
let filePath = '' + files[i]; // 沒有找到合適的方法獲取路徑,這樣寫可以轉成文件路徑
plus.io.resolveLocalFileSystemURL(filePath, function(entry) {
if (entry.isDirectory) {
entry.removeRecursively(function(entry) { //遞歸刪除其下的所有文件及子目錄
that.files = []
uni.showToast({
title: '清除成功',
duration: 2000
});
that.getStorageSize(); // 重新計算緩存
}, 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.getStorageSize();
});
}
},
微信小程序獲取緩存,清除
// 獲取本地緩存大小
getStorageSize(){
let that = this;
uni.getStorageInfo({
success(res) {
console.log(res)
console.log(res.keys);
console.log(res.limitSize);
let size = res.currentSize;
if (size < 1024) {
that.storageSize = size + ' B';
} else if (size/1024>=1 && size/1024/1024<1) {
that.storageSize = Math.floor(size/1024*100)/100 + ' KB';
} else if (size/1024/1024>=1) {
that.storageSize = Math.floor(size/1024/1024*100)/100 + ' M';
}
}
})
},
// 清理緩存
clearStorage (){
let that = this;
uni.showModal({
title:'提示',
content:'確定清除緩存嗎?',
confirmText:'立即清除',
success(res) {
if(res.confirm){
uni.clearStorageSync();
//重新獲取并顯示清除后的緩存大小
that.getStorageSize();
uni.showToast({
title:'清除成功'
})
}
}
})
}
原文鏈接:https://blog.csdn.net/L_15737525552/article/details/128455290
- 上一篇:沒有了
- 下一篇:沒有了
相關推薦
- 2022-04-12 Redis?Server啟動過程的詳細步驟_Redis
- 2023-01-10 Flutter?CustomPaint繪制widget使用示例_IOS
- 2022-09-17 Python利用AutoGrad實現自動計算函數斜率和梯度_python
- 2023-02-12 JetpackCompose?Navigation導航實現流程_Android
- 2022-03-31 用Python實現石頭剪刀布游戲_python
- 2023-07-04 Netty的SO_LINGER不要隨便用
- 2022-09-10 pycharm下載包的時候出現?no?information?available的解決_python
- 2022-04-16 pycharm如何為函數插入文檔注釋_python
- 欄目分類
-
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支