1227 字
6 分钟
NoActive进阶文档
NoActive
进阶文档
文章内容过时警告

此文章内容上次更新应该是24年底或25年初,部分内容可能过时;例如SukiSU等管理器可能需要自行探索

前言#

WARNING

本文是为极客和有折腾精神的人所准备的进阶篇文档,大部分内容需要你自己动手实操,并且可能会出现包括但不限于以下几种情况:手机变砖、出现发热与卡顿、环境异常等

如果你觉得本文有任何错误或需要补充的地方,可在频道@Glitchspire(频道ID)进行添加或修改

如果找不到@Glitchspire(频道ID)可以尝试@璨梦踏月-JOYUI13-5.10(频道ID)

CAUTION

免责声明#

你所进行的一切行为均由你自己承担责任,别砖了过来找我,不会提供任何帮助,自己想办法


Re-Kernel KPM相关问题#

KPM模块为Apatch独占(即Apatch管理器内核模块一栏),所以你需要刷入Apatch才能使用KPM版Re-Kernel


Apatch与其它Root方案共存#

你需要两个东西:KernelPatch镜像与Apatch Apk

KernelPatch

Apatch

IMPORTANT

无论何时都只建议使用Release版本进行替换,Pre-Release或Github Ci构建的的版本可能导致不可知的问题

以及,请务必使Apatch安装包的原KernelPatch版本号与你要替换的版本号对应,不对应的版本号会不生效,同时有极大概率导致变砖,一定注意

这里以Apatch 10763版本为例,下载对应的kpimg-linux

共存

然后重命名kpimg-linux为kpimg,并替换掉Apatch Apk当中的kpimg

TIP

kpimg在assets文件夹

共存

然后用Scene之类的工具提取你当前的boot.img,用你替换完的Apatch修补后再刷入boot.img

NOTE

VAB分区的设备你当前处于哪个分区就提取哪个,别搞错活动分区了

例:A分区设备提取boot_a.img

至此,共存部分结束,重启后你会发现仅内核模块可用,Root授权和系统模块均不可用,这时就可以使用Re-Kernel KPM了

WARNING

只建议先加载,然后再使用嵌入,以防止出现内核不兼容导致的卡开机问题等


用Apatch作为Root方案#

流程与其它Root方案几乎一致

Apatch Apk

IMPORTANT

无论何时,Apatch提取并修补的都是boot分区,除非Google未来更换Linux内核位置,否则均为boot


从Magisk/Kernel SU切换至Apatch#

太简单了,不想写,你们自己看吧:查看链接

IMPORTANT

使用此方法可能会导致Root方案残留,我只建议走2的流程,使用纯净boot修补然后正常刷入


内存优化#

如果你希望修改内存的保留值,你可以到/data/system/NoActive_xxxxxxxx/config/MemConfig.json中修改freeRAM或freeSWAP

0(自动),负整数(关闭),正整数为指定的值单位为MB

IMPORTANT

注意:ZRAM和Swapfile都属于SWAP(交换分区)
你需要写入符合JSON语法格式的配置,否则Noactive会自动清除错误配置并还原

MemConfig.json
{
"freeRAM":0, <---- 物理内存保留值
"freeSWAP":0, <---- 交换分区保留值
"highPriorityUidSet":[ <-- (高)
10258,
10299
],
"lowPriorityUidSet":[ <-- (低)
10272,
10289
],
"mediumPriorityUidSet":[ <-- (中)
]
}

FCM解冻#

Noactive自pro-173往后支持FCM解冻,由于配置文件变更,此处仅讨论此文发出时的最新版pro-185


不使用自定义,所有应用都支持FCM解冻#

你需要更改的配置文件/data/system/NoActive_xxxxxxxx/的AdvanceConfig文件,receiveFCM后面的false改成true,保存后无需重启即可生效

示例配置:

AdvanceConfig
{
"adaptiveIcon":false,
"fcmAppSet":[
],
"receiveFCM":true,
"speedMode":false
}

使用自定义,选择部分应用可以FCM解冻#

配置文件依然为/data/system/NoActive_xxxxxxxx/的AdvanceConfig文件

AdvanceConfig
{
"adaptiveIcon":false,
"fcmAppSet":[
"com.microsoft.office.outlook",
"com.x8bit.bitwarden" <-- (在这里添加包名)
],
"receiveFCM":false,
"speedMode":false
}
IMPORTANT

你依然需要填写符合JSON格式的包名

如果填写包名,则receiveFCM应为false


冻结Binder#

关于Binder的介绍请查看名词解读与定义:名词解读

BinderFreeze用于阻断被冻结的应用与其它应用之间的通信,此特性自5.10内核开始支持,但目前仍然存在各种各样的问题,包括但不限于应用假断网、出现卡屏或闪弹

TIP

Noactive的BinderFreeze默认关闭,如果你出现以上这些问题请看:名词解读

2025-08-09迁移时注释: 我不确定这个是不是指向这里, 之前虽然也是指向的名词解读, 但这对于解决问题似乎没有帮助

6.1内核会比5.10/5.15具有更良好的BinderFreeze体验,但仍然不建议使用BinderFreeze,目前的Binder临时解冻虽然不够完美,但依然是目前唯一不存在问题的解决方案

NoActive进阶文档
https://blog.cmtyx.top/posts/noactive/expressive/
作者
璨梦踏月
发布于
2025-08-09
许可协议
CC BY-NC-SA 4.0

评论区

评论区加载中...

如果长时间无法显示,请尝试刷新页面。(如果仍然无法加载请尝试清理缓存并刷新)