深度清理微信缓存(测试版微信可以定向清理缓存)
深度清理微信缓存(测试版微信可以定向清理缓存)话题回到缓存身上,刚才说到缓存是软件的重要组成部分,对微信这种即时聊天软件来说,脱离本地缓存将所有数据都放在云端显然不现实,缓存文件的出现可以让软件能以更快的速度完成必要数据的载入。从这个角度来看,利用读取更快的本地文件作为短时间的替代品,让软件可以在后台获取下载最新的云端数据,缓存确确实实能提升软件的运行速度。当然了,现在的微信就算你不清缓存,点开别人前几天发送的文件也有可能提示文件已经过期就是了。不过微信似乎也意识到了自己的问题,因此在最新的微信Android版8.0.22测试版中,微信特地加入了清理缓存的细分界面。依次进入“设置“-”通用“-”存储空间“页面后,用户终于可以分别清理视频号、小程序、公众号、朋友圈等细分功能进行缓存清理了。不过话又说回来,为什么微信会留下这么多的缓存?其实从软件开发的角度看,缓存其实是软件的其中一个重要组成部分,也是让软件可以流畅运行的其中一个重要机制。
过去数十年里,智能手机的发展方向经历了多次改变,但不管智能手机的功能或身份发生什么变化,用户对大存储空间的追求却从未改变。尤其是2011年Android系统全球占比超越了50%后,国内新兴的Android手机市场也为手机的存储空间提出了更高的追求。
但为什么这里我需要专门强调2011年呢?原因很简单,2011年1月21日,影响了国内移动互联网发展软件——微信正式推出。
时过境迁,2022年的国内移动互联网早已不是过去“小而美”的那个样子看,尽管微信本并没有像其他国内特色手机软件那样加入闪屏广告,但功能日益增长的微信却用越来越“丰富”的缓存文件占据了用户的手机空间。
看到这里,大家不妨打开手机,看看这个安装包只占据265MB的软件,吃掉了手机多少的存储空间。甚至在小雷身边就有因为微信占据了40GB存储空间而不得不购买256GB手机的同事。微信离曾经的“小而美”已经越走越远了。
不过微信似乎也意识到了自己的问题,因此在最新的微信Android版8.0.22测试版中,微信特地加入了清理缓存的细分界面。依次进入“设置“-”通用“-”存储空间“页面后,用户终于可以分别清理视频号、小程序、公众号、朋友圈等细分功能进行缓存清理了。
不过话又说回来,为什么微信会留下这么多的缓存?
清理缓存真的能变快吗?其实从软件开发的角度看,缓存其实是软件的其中一个重要组成部分,也是让软件可以流畅运行的其中一个重要机制。以今天的主角微信为例,如果开发者不依靠本地缓存文件,我们每一次打开通讯录都需要重新向服务器请求列表里的好友头像、每一次打开朋友圈都要重新下载数十张图片、甚至每一次点开好友发来的文件都要从零开始下载,这样的即时聊天软件真的有人用吗?
当然了,现在的微信就算你不清缓存,点开别人前几天发送的文件也有可能提示文件已经过期就是了。
话题回到缓存身上,刚才说到缓存是软件的重要组成部分,对微信这种即时聊天软件来说,脱离本地缓存将所有数据都放在云端显然不现实,缓存文件的出现可以让软件能以更快的速度完成必要数据的载入。从这个角度来看,利用读取更快的本地文件作为短时间的替代品,让软件可以在后台获取下载最新的云端数据,缓存确确实实能提升软件的运行速度。
既然缓存那么重要,那为什么微信推出分类清理缓存的功能能换来用户的点赞呢?这就牵涉到一个“量”的问题了。在软件领域,让一个软件运行得更快的方式有很多,而最广为计算机人知的一个方法叫做“空间换时间”。
缓存文件的运用说到底就是空间换时间的其中一种方式:对于一个合理开发的软件来说,适当的缓存文件确实能起到加快运行的作用,同时也不会对系统的文件存储带来过多的存储负担。但如果某个软件脱离了“合理”的范畴,在系统中放入了过多的缓存文件,物极必反的道理就该出来说话了。
缓存文件的出现是为了解决完整数据加载缓慢的问题,但除了远端数据下载缓慢外,过多的本地缓存数据也会拖慢数据加载的时间。举个简单的例子,在书里放一两个书签可以让你快速找到对应页面,但如果你在一本五百页不到的小说里放两万个书签,原本的内容还能不能看到本身就是个问题。
过多的缓存文件本身就需额外的文件索引系统,同时也需要占据更多的软件空间,甚至有可能会出现缓存文件比完整文件还要大的情况。那这些数据都存到了哪里呢?没错,就存在微信占据那数十GB的文件里。
道理我都懂,为什么微信那么大?其实从微信的角度看,我也能理解为什么微信会在手机里放那么多的缓存文件。在用户口中,微信可能“只不过是个聊天软件”,但对国内数字生活来说,微信从来都不只是通讯软件那么简单。朋友圈、公众号、视频号的出现不仅占据了用户的时间,同时也占据了更多的手机缓存空间。用户划过的每一条朋友圈、看过的每一个公众号、视频号,背后都意味着更多的缓存文件。
2017年推出的微信小程序更是让微信的缓存问题带来了更严峻的压力,以每天都离不开的健康码为例:尽管小程序的所有数据最终都以服务器远端数据为准,但在文件没有更新的情况下,小程序的框架、交互与图片背景素材都会以本地文件的形式存放在用户手机中。
而根据微信小程序的开发指南,微信见这些本地文件分为三类:
- 本地临时文件:运行时最多4GB、结束后会清理超过2GB的部分。
- 本地缓存文件:最多200MB。
- 本地用户文件:最多200MB。
但本地缓存文件和本地用户文件的清理时机跟代码包一样,只有在代码包被清理的时会被清理。很显然,用户不会对这些数据做出任何区分,反倒会将其统称为“缓存文件”。如果每一个小程序都吃满了2.4GB,微信占据用户手机存储空间的抱怨似乎也算得上是有理有据了。
但微信真的需要这么多功能吗?对于我们来说可能不需要,但对微信自己来说,非常需要。
不同于其他移动软件,微信本身就是一个“超越”手机系统的超级应用,它的出现将用户从手机厂商给出的生态中剥离,并将这些用户的数据捆绑到自己的平台中。小程序的出现,毫无疑问是微信“系统化”的重要契机。
只要一台手机支持小程序,我们就可以借助小程序,在不离开微信的前提下打车、叫外卖、购物、甚至是支付水电费。再加上微信小程序开发与维护的成本远低于开发一个传统App,因此不少服务类应用甚至只提供微信小程序。
这种超级应用的出现,极大的削弱了用户对手机系统的依赖,同时也让用户切换手机品牌的成本进一步降低。此前微信与苹果因打赏费用抽成而产生冲突时,不少用户就表示可以没有iOS,但不能没有微信。虽然说现在手机品牌推出的各项云云服务确确实实为品牌添加了不少用户忠诚度,但在微信“即时通讯软件”五个字面前,用户的选择都非常“诚实”。
还能回到曾经的小而美吗?这也是我认为微信不会回到曾经“小而美”时代的原因。对微信自己来说,无论是另起炉灶建立新的平台,还是“开小号”将微信系统平台的身份独立出去,都将对微信本身的用户粘性带来极大的打击。
如此明显的问题,行业内部的产品经理显然不可能看不到,但是在KPI面前,上头要求的流量、时长和活跃用户标准让团队无力作出改变。繁杂和臃肿,能够迫使用户使用时长提高,而简洁和直接,则很可能意味着流量的快速丢失,这对任何团队来说都不是什么好消息。
不过,随着移动互联网的流量红利逐渐消失,各个消费领域开始转向存量市场。厂商们开始意识到,比起继续挖掘更快的增长或者更高的时长,如何更好地为用户提供合适的服务,以更好地体验留下现有的存量用户,才是一款应用得以长期发展的关键所在。
或许正是因为观念开始转变,近些年来,部分互联网厂商做起了“减法”。早在去年,腾讯就已经先后为QQ音乐、手机QQ等多项应用推出“简洁模式”,在开启简洁模式后,手机QQ附带的诸如直播、微视、动画、游戏中心等等功能全部都会隐藏起来,只剩下最基础的聊天、好友、动态,整个界面清爽到令人感动。
当未来某天移动互联网生态不再以流量作为唯一评判标准时,微信说不定还真有可能会回归本心,做回那个小而美的软件。不知道在那个时候,7天前通过微信发送的文件,还会不会提示文件已过期了呢?