夜雨聆风学习资料网

ARTICLE · 1108802

手机内存越做越大,为什么APP反而越来越吃内存?

手机内存越做越大,为什么APP反而越来越吃内存?

先做一个前置声明:本文不吹不黑、不站队,不评价任何一款APP好坏。

手机运存从4G卷到12G、16G甚至更大。硬件给的空间越来越充足,日常打开APP,占用内存却水涨船高。

不少人疑惑:硬件升级了,为什么APP还是那么耗内存,动不动就后台重载、杀应用?

一、存储空间 和 运行内存   

很多普通用户会把两者混在一起。

  • • 存储(ROM):就是常说的256G、512G,存安装包、图片、视频、缓存文件;
  • • 运行内存(RAM):8G/12G/16G,APP正在运行时临时存放数据的地方,决定手机能同时保持多少个APP在后台。

手机厂商宣传“大内存”,大多指运行内存。很多人以为,只要RAM足够大,APP就该轻巧流畅。实际是内存上限拉高之后,APP开发的思路,也跟着变了。

二、为什么越来越吃运行内存?   

1. 为了流畅体验

启动的时候,把可能用到的素材预先读到内存里。切换页面、下拉刷新的时候,减少等待,做到“秒开”。预加载越多,页面越顺滑,代价就是内存占用暴涨。

2. 大量使用网页套壳(H5)

很多APP不是原生代码开发。看着是APP,本质里面内置了一个浏览器内核。浏览器本身就很消耗内存,网页里的图片、动态特效、JS脚本、埋点统计代码,全部都要占内存,存开销更高。

3. 后台常驻服务

APP后台还跑着很多看不见的任务:用户行为埋点、数据上报、消息推送、实时状态同步、广告组件预热。这些附属模块,,会持续占用内存。

4. 内存大户

短视频、图文信息流是消耗内存的大头。滑动浏览时,会预加载上下多条视频和图片,保存在内存缓存。大量媒体资源堆积在RAM中。只要切换几个信息流软件,内存占用就会快速飙升。

这里不是说APP做错了,这是商业产品的取舍:牺牲内存,换取更顺滑的滑动体验,减少加载转圈。

三、硬件升级拉高软件资源   

这就是容易忽略的循环:手机厂商把内存做大 → 开发团队知道用户设备内存充足 → 开发时降低内存优化优先级,不再抠着资源写代码。

四、缓解办法   

普通用户不用指望APP本身大幅度瘦身,我们可以做几件小事减少杀后台:

  1. 1. 不一次性同时开好几个信息流、短视频APP;
  2. 2. 不用的软件,从最近任务列表上滑彻底关闭;
  3. 3. 在系统设置里,关闭不常用APP的后台活动、自动刷新;
  4. 4. 定期清理APP缓存(注意:清理缓存≠清理运行内存)。

这些操作只是缓解,没法从根本解决APP高内存占用的问题。

总结   

APP厂商选择用预加载、内嵌网页、媒体预缓存等方式,换取更顺滑的交互。硬件的提升,给软件留出了更多资源开销的余地,两者互相拉扯。不是内存白加了,而是APP的资源需求,跟着硬件上限一起水涨船高。

最后   

这不是谁对谁错的问题,只是行业里的一种取舍。APP团队优先保证交互流畅,会选择消耗更多内存;手机厂商加大运存,来承接这类软件需求。

——历史推荐——

阿里云99元/年服务器真相!能干嘛?续费会不会涨价?一次性说透

你的手机处理器属于什么段位?一张天梯图看清真实性能水平

超全整理!火车车次字母含义,买票对照看,看懂分清快慢列车

超全整理!手机所有后缀字母含义,新手购机直接对照看

haowallpaper 豪风壁纸:4K/8K 高清无水印壁纸网站

点一点「赞、推荐」支持

相关学习资料