uniapp如何清除应用缓存和清除应用数据

06-24 335阅读 0评论

文章最后更新时间:2022年08月09日

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

uniapp如何清除应用缓存和清除应用数据

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

uniapp应用为例

清除缓存功能

functiON clearAppCacheData() {  	let main = plus.android.runtimeMainActivity();  	let sdRoot1 = main.GetCacheDir();  	let filesOne = plus.android.invoke(sdRoot1, "listFiles");  	let lenOne = filesOne.length;  	for (let i = 0; i < lenOne; i++) {  		let filePath = '' + filesOne[i]; // 没有找到合适的方法获取路径,这样写可以转成文件路径  		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: 1000  		});  	}  	if (callback) {  		setTimeout(() => {  			uni.hideToast()  			callback()  		}, 500)  	}})

清除全部数据

function 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();}


免责声明
本站提供的资源,都来自网络,版权争议与本站无关,所有内容及软件的文章仅限用于学习和研究目的。不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负,我们不保证内容的长久可用性,通过使用本站内容随之而来的风险与本站无关,您必须在下载后的24个小时之内,从您的电脑/手机中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。侵删请致信E-mail:Goliszhou@gmail.com
$

发表评论

表情:
评论列表 (暂无评论,335人围观)

还没有评论,来说两句吧...