DOC软件文档百宝箱

NoActive 冻结方式怎么选:API、V2、V1、KILL 按内核对号入座

NoActive 提供 API、V2、V1、KILL 四种冻结方式,选错方式是「装了没效果」的头号原因。本篇把四种方式的机制、适合的机型与各自的坑摆在一起,给你一条按内核选的路。相关文档:装完没效果怎么排查.md · 白名单与冻结开关设置.md


一、先给结论

二、四种方式对照

方式机制一句话适合谁要注意的坑
API调用系统自带「暂停执行已缓存」的接口,按内核支持自动处理内核新、不想折腾的机器项目页自己标注「API 存在不可控性」,行为随系统版本变化
V2Cgroup Freezer V2,谷歌原生的后台冻结机制内核 5.0 及以上(部分厂商把它移植到了 4.19)兼容性好、效果统一
V1Cgroup Freezer V14.19 内核的 MIUI / HyperOS / RealmeUI / ColorOS非 MIUI 设备曾有内存泄露问题;3.2 起加了防泄露补丁降低影响
KILL用信号方式处理进程任何内核都能用,最后的兜底内存吃紧时系统可能把冻结的进程整体解冻;进程仍存在,回到前台可能重载

KILL 的两个坑是机制自带的:它是「信号」而非「冻结器」,内存压力一大系统就把进程放出来;放出来后应用回前台就可能重载。能用 Freezer(V2 / V1)就用 Freezer。

另外按用户社区反馈,有的版本会把 KILL 细分成 KILL19 / KILL20 两档,或者多一档「自动」让系统自己识别——分档只是信号取值不同,哪个实际能冻住就用哪个;「自动」档有识别出错的反馈,选了它没效果时记得手动指定。

三、切换方法与验证

  1. 打开 NoActive,进右上角设置,找到「冻结方式」。
  2. 选定后回到「运行列表」:开一个应用再退到桌面,看它是否显示「已冻结」。
  3. 刚切换完不生效,先重启一次再看。
  4. 还是全都没被冻结 → 按 装完没效果怎么排查.md 的五步路径走一遍。

四、都不生效时的兜底

su
magiskpolicy --live "allow system_server * process {sigstop}"

这条命令的效果重启后不保留,每次开机都要重新执行;嫌麻烦可以写进开机脚本,具体做法按你用的 Root 管理器查。

选定方式、验证生效之后,该白名单的白名单、该后台播放的后台播放,按应用类型的搭配见 白名单与冻结开关设置.md;想了解模块整体的能力面,可以逛逛 NoActive 功能说明站。

同站更多