Floppy 内核关闭背光调节器的方法

这是个假的二级标题

用了两年的小米5逐渐老了,新游戏也拉不动了,就去找找有没有什么能流畅吃鸡的方法。
然后啊,,,就找到了这个Floppy超频的内核,可以将820这个渣U的大核拉到2.2GHz,小核拉到1.8GHz,简直比满血版820都厉害啊,并且好像还没有温控,嘿嘿嘿(在内核调校APP里没有发现温控选项,在System\etc里也没有发现温控文件)😏
然而发现了另外一个问题,就是在升级到了MIUI10.2(安卓O)之后,滑动亮度条的时候会出现跳变的现象,亮度从一个亮度一下子调到另外一个亮度,很难受。。。。(╯﹏╰)
没错,在内核调校里把内核的背光调节器关闭,然后使用系统自带的亮度调节就好了。然后我就想能不能直接改一下内核,让它不用每次开机都要进APP里手动关闭呢。
(所以就找到了╮(╯_╰)╭)

开始动手

我们使用的内核是被封装在zip刷机包里的,我们可以通过解包zip包来修改它的参数。
FloppyKernel-Mi5-Lite-Prime-Pro-05012019-UBERTC-Oreo-MIUI.zip文件为例,解压之后会发现有下面这样的文件
img

既然是以刷机包的形式给用户使用的,我们可以从它的刷机脚本开始研究。
我们打开**/META-INF/com/google/android/update-binary文件,可以看到里面有很多操作是使用anykernel.sh**脚本来操作的
img

那我们就来研究一下这个脚本。打开这个脚本之后可以发现有这样一行

1
2
nsert_line init.rc "import /init.floppy.rc" before "import /init.environ.rc" "import /init.floppy.rc";

img

很显然这句有很多的.rc文件,rc文件属于命令脚本,我们可以将关闭背光调节器的命令写在这些脚本里就好了。

另外可以发现这些.rc文件都是在一个叫做ramdisk的文件夹里面,就可以肯定是可以操作内核的脚本无疑了,因为内核会在开机之前加载到内存里,而ramdisk就是内存磁盘的意思。

打开init.floppy.rc文件可以发现有很多的命令,我们需要把关闭背光调节器的命令下载下面,那么怎么获取关闭调节器的命令呢?
我们可以使用内核调校这个工具,利用开启启动操作,就可以获取到命令了。
img

好了,我们把这个命令添加在init.floppy.rc文件里面就可以了
img

最后我们把它保存,重新打包成zip,通过recovery刷入就好了。开机后发现背光调节器默认是关闭的了,哈哈哈哈,奈斯~~😁

为什么不用init.d?

当时我第一个考虑的就是利用init.d开机自动执行,写个脚本往里面一丢就好了,可是后来发现init.d执行的比较早,内核的配置随后才会重写,所以用init.d是更改这个内核的配置是无效的。

下载地址

@JonasCardoso维护的kernel版本:https://github.com/JonasCardoso/android_kernel_xiaomi_msm8996/releases
已将关闭背光调节器的Floppy Kernel: https://www.lanzous.com/i2tw0zi

坚持原创技术分享,您的支持是我前进的动力!