Web开发

首页 » 常识 » 诊断 » uniapp清除应用缓存和清除应用数据
TUhjnbcbe - 2023/8/15 21:47:00
北京哪个医院治疗白癜风正规 https://jbk.39.net/yiyuanfengcai/yyjs_bjzkbdfyy/

安卓系统,基本都可以在设置中清除数据,其中有两个选项,一个是清除全部数据,一个是清除缓存。全部数据包括用户数据,是属于彻底的清除,操作后需要重新授予应用权限。而清除缓存则不需要,只是清空了缓存的数据。

然而,并不是所有的安卓系统都提供了清除数据的功能,如果没有提供,想要清除数据,则只能采用卸载重装的方法。如果是我们自己写的应用,完全可以在应用中内置清除数据的功能。

以uniapp应用为例

清除缓存功能

functionclearAppCacheData(){  letmain=plus.android.runtimeMainActivity();  letsdRoot1=main.getCacheDir();  letfilesOne=plus.android.invoke(sdRoot1,"listFiles");  letlenOne=filesOne.length;  for(leti=0;ilenOne;i++){    letfilePath=+filesOne;//没有找到合适的方法获取路径,这样写可以转成文件路径    plus.io.resolveLocalFileSystemURL(filePath,function(entry){      if(entry.isDirectory){        entry.removeRecursively(function(entry){//递归删除其下的所有文件及子目录          console.log(清理文件数据完成)        },function(e){          console.log(e.message)        });      }else{        entry.remove(function(entry){//递归删除其下的所有文件及子目录          console.log(清理文件数据完成)        },function(e){          console.log(e.message)        });      }    },function(e){      console.log(清理文件数据失败)    });  };}plus.cache.clear(()={  uni.clearStorage()  clearAppCacheData()  if(showMessage){    uni.showToast({      title:清除缓存成功,      duration:    });  }  if(callback){    setTimeout(()={      uni.hideToast()      callback()    },)  }})

清除全部数据

functionclearAppUserData(){  plus.android.importClass("android.app.ActivityManager");  varContext=plus.android.importClass("android.content.Context");  varam=plus.android.runtimeMainActivity().getSystemService(Context.ACTIVITY_SERVICE);  am.clearApplicationUserData();}

1
查看完整版本: uniapp清除应用缓存和清除应用数据