问题描述
将 Nexus 6 从原生 Android Marshmallow 升级到 CyanogenMod 后,发现内部LED无法关闭,在设置中尝试通过禁用或更改颜色的方式均未成功。重启手机可暂时解决问题,但在充电时或从充电状态下重启后,问题依然存在。
解决方案
注意:在进行以下操作前请确保完全了解这些步骤,以防导致系统不稳定。
方案1 – 通过修改 init 脚本关闭LED
步骤一: 备份现有设置并进入 root 模式
- 首先确保手机已解锁引导分区或已 root,可以使用特定工具如 Magisk 或 SuperSU 来获取root权限。
- 使用 ADB 工具备份当前的系统文件及 init 脚本(通常位于
/system/bin/
)。
adb pull /system/bin/
步骤二: 修改 init 脚本
- 编辑
init.nexus6.rc
文件,找到或添加一个控制LED的命令。一般情况下,可以通过关闭特定服务或进程来实现。 - 添加如下内容到你的 init 脚本中:
service led_control /system/bin/sh -c "while :; do echo 0 > /sys/class/leds/button\@1:green:user/brightness ; sleep 1; done" &
这个命令将持续关闭 LED。修改 button\@1:green:user
成为你实际的设备路径,可以通过如下命令确定:
cat /sys/devices/virtual/leds/*/name
- 刷新 init 启动脚本。
adb shell reboot
步骤三: 测试控制
- 拔掉充电线并重启手机。
- 通过 ADB 监控日志查看是否成功关闭 LED:
adb logcat | grep -i led
方案2 – 更新或重新编译 ROM
确保您使用的是当前最新的 CyanogenMod 系统,有时制造商会在更新中修复某些已知问题。若方案1不可行,可以尝试从社区获取最新修改后的官方ROM来替换现有系统。
步骤一: 获取最新 ROM
访问 CyanogenMod 官方论坛或 Nexus 项目网站下载适用于您设备的最新 ROM 版本。
步骤二: 安装新 ROM
- 使用 Magisk Manager 或 SuperSU 执行安装操作。
- 启动新下载的 ROM 并测试 LED 控制状态是否有所改善。
经过以上步骤,应能有效控制 Nexus 6 的内置LED。如有其他问题或需要进一步帮助,请咨询相关社区或论坛以获取专业建议。
正文完