不知道有没有人在查看存储空间时发现现在的国产APP越来越大?占用了超多的内存,即便是清理了缓存也没什么效果。就拿淘宝来说,显示仅需70多MB的淘宝,经过一段时间的使用后APP的体积竟然达到了673MB。我们天天不厌其烦一次又一次的清理手机内存,结果这些APP的体积反而越来越大?
这其中的原因究竟是什么?你难道以为删掉那些图片、文字、特效动画就能成功帮APP瘦身?太天真了,我来告诉你为何清理缓存不能明显为APP瘦身的原因。
国产APP为何越来越臃肿?
① 新添加的功能越来越多,而且还会持续跟进添加新功能。
原本一款纯聊天软件。比如像微信,想在混合了各种功能,能叫网约车、手机充值、借款、理财、饮料股阿含、充电费水费、购物团购、订酒店买火车票、还信用卡。总之功能越来越全,相对需要的空间也越来越大。
② Android的广告推送广告
苹果有自己的服务器可以用,而谷歌的服务器却不能用。而且广告推送是与盈利挂钩的,这是一个很重要的功能。于是便借用第三方,一个广告推送就会让app 多产生七八个类,几百行甚至几千行代码。并且这个功能因为需要推送,所以这个功能需要后台24小时运行。这导致无数个pushService在后台运行。
③ 软件升级
相对于苹果,Android的升级十分的频繁,APP的代码体积有相当大的可能是图片造成的。图片越多会造成APP体积极速扩张。因此与媒体有关的相关视频、游戏等就变成了巨无霸。并且Android手机碎片化严重,为了用户体验,常常需要2套以上的图片,侵占存储体积较大。
④ 企业产品优化不够
产品优化是一件非常耗时而且不一定能收到成效的工作,企业不重视这方面的工作,APP越来越臃肿。
⑤ App素材库
一款好看的APP需要大量素材合成,各种素材特效占用空间,并且安卓手机要兼容各种型号的手机,无形中增大了体积。
为何如今国产APP清理缓存不能减小APP体积呢?
① 应用市场内下载的仅为基础版本,如使用个别内置功能,APP会自动下载那个模块,因此清除缓存不能解决功能模块下载占用空间的问题。
有些功能,只有在你点击了那个模块时才会加载,启用的内种功能越多,APP的体积越大。问题是这些功能并不像缓存的图片那样可以被轻易删除,可以说普通的清理缓存对这些内启功能来说没用。
以上是通过缓存清理不掉的内容。
例如使用率极高的淘宝APP,淘宝使用的是Weex框架为基础来写,Weex框架的优势主要针对大型APP,稳定性好,每次相当于更新若干功能模块,只需对模块进行深度除虫,除虫时间缩短效率提升,Weex框架可以加快APP更新发版速度。
② 在浏览淘宝的时候,手机会自动缓存许多图片,因此也就解释了为什么在断网的时候打开手机淘宝还能有界面显示,并且可以滑动几页。若此时对淘宝中的缓存进行清理,之后再打开淘宝界面,页面便不会正常显示。但等联网后,重新刷新页面,淘宝APP继续进行相关图片下载,原本清理的内容又回来了。
这些是可以轻易删掉的内容。
最后
现在发展的趋势是,一款APP上将会集合越来越多的功能,从这个角度上来说,APP的体积在现有的技术下可能会越来越大。
但是相对应的,手机厂商推出的新机存储起步也开始变大,从8GB起步到如今的32GB起步,都能缓解APP体积变大的问题。工程师们其实在努力将APP进行精简、删除无用代码,争取做代最小。没准在未来新的算法出现后,人类可以用极小的空间释放大量的丰富的内容。
鉴于目前大量APP会采用内嵌模块功能,在新用户点击时自动触发下载增大APP体积,而这种现象是无法用普通清理缓存的方式减小APP体积的。
热门跟贴