解释一下:iOS 的特点是冻结式后台,即应用留后台但不运行,只有前台应用能运行 。这样可以做到打开应用时秒开,但退入后台也不消耗资源,只占用内存;Windows 特点是打开哪个应用,哪个应用就运行,点击关闭就停止运行,并清出内存 。
内存占用也是与后台有关,旧时 Android 日常会占用 50%;iOS 内存在开机不久会爆满,始终居于 95% 以上;而 Windows 则是应用多大,内存占用就多大,没有应用时占用很低 。

文章插图
win 空载占用
还有一个 Windows Phone 系统,是 Microsoft 基于 win 为智能手机设计的系统,它的特点不是杀死,而是限制,对后台应用数量限制,对每个应用占用内存限制 。这种单个体小,个体总数少的限制,是非常简单且有效的,逼开发者不得不优化 。不愧是你,微软 。
二、为什么后台应用关不掉?有些用户会刻意关闭后台,以释放内存或增加续航,但发现无法关闭后台运行的应用 。这是什么原因呢?来详细分析一下后台管理手段与应用的关系 。首先看一下后台界面 。

文章插图
卡片后台界面
在这个界面中,可以展示出你打开过的应用,并生成缩略图 。前面说过,安卓应用不存在关闭,退出后应用会进入后台运行 。这个界面,可以手动停止后台的应用进程,就是点击那个 × 号,或在高版本上是滑动 。但此行为并不等同于强行停止!
这个界面并不是强制性停止应用,而是清理掉应用的界面,并通知应用,应该停止自己的后台进程了 。至于停止哪些服务,就是应用自己说了算 。旧时安卓这个机制问题真的很大,尤其 Android K-N,和恶意应用对线简直被爆锤 。当时定制化系统对这些机制进行了修改,划掉卡片即强行停止,才能对恶意应用进行反击 。
应用保活:
应用的开发者为了一些功能运行,或是一些利益原因,会对应用的后台进程进行保护,防止被杀掉,此行为称为应用保活 。
常见的保活手段,就是留通知 。在通知栏中留一条不可清除的通知,即可实现避免被杀 。即便你在后台界面划掉了卡片,只要这条通知还在,那么这项服务就在,可以随时拉起主进程,继续运行 。这样的应用有很多,比如在通知栏里放个资讯窗口、搜索框,就是这种思路 。

文章插图
酷安后台
最直接的保活手段,就是向用户请求权限 。在定制系统上,通常会有 “允许应用在后台运行” 权限,应用可以找一个正当的借口,让用户主动把这个权限打开,就能在后台畅通无阻的运行了 。
除此之外还有一些奇妙操作,比如建立透明悬浮窗,可以直接提高应用状态分级,就难以被 lmk 杀掉;进程守护,一个应用建立几个进程,有一个进程掉了,立马由另外一个进程拉起来;还有更强的,以毫秒级速度不停尝试拉起自己的进程,这种方法甚至可以无视强行停止(只要我启动的够快,强行停止就关不掉我),这已经是破坏型行为了 。
应用唤醒:
应用会通过一些方式,在用户未手动打开的情况下自行启动,即应用唤醒,也称应用自启动 。此时没有前台界面,启动的只是进程与服务 。
Android 应用开发时,会给应用加上 BroadcastReceiver (广播接收器,以接收系统的广播),以对一些状态作出对应的响应,比方说此设备收到电话,系统就会发出广播 “来电话了”,应用 “拨号” 就会自启动,响铃提醒用户接听 。存储空间低于一定量时,系统会发广播,文件管理类应用会提示用户清理文件以释放空间 。合理使用可以使应用极大提升功能性,但不合理使用的话,就是给用户找麻烦 。

文章插图
百度云自启
借用知乎老哥的图 。可以看出百度云会接收图中的广播,实现自启动 。WiFi 更改、存储变动时自启动也就罢了,毕竟功能联网还要依赖存储,但收发短信、拨打电话还要启动干什么呢?安装卸载应用时也启动,充电断电也启动,你是多么怕自己的服务拉不起来啊?
即便杀掉了后台,没一会又自启了,跟没杀一样 。
关联启动:
应用的广播接收器,不止可以接收系统的广播,也可以接收其它应用的广播,从而被其他应用拉起 。
推荐阅读
- 小米|小米MIUI Go曝光:小内存手机能流畅运行
- JVM内存管理机制
- IDC:浪潮/华为/曙光占据中国AI服务器市场74%份额
- Redis内存分析工具--rdr安装与使用
- 如何关闭Win10系统自动更新,防止电脑无法开机
- BIOS错误信息及解释-值得收藏
- 荣耀|千元5G手机也有“10GB”大内存!荣耀Play6T明日开售:1199元起
- win7系统如何设置开机启动项,优化开机速度?
- 教师|专业还会影响择偶?这几个专业择偶时不占优势,男同学要谨慎考虑
- 华为|华为新款V55智慧屏曝光:内存升级 加量不加价
