【发布时间】:2012-09-02 20:26:30
【问题描述】:
我已经在内核代码库中挖掘了几天,但我在任何地方都找不到。
我想禁用/启用/检测许多高端 Mac 笔记本电脑所具有的基于环境光传感器的屏幕调光状态。这是由显示控制面板中的“自动调整亮度”复选框激活的调光。
请注意,我不是谈论会导致屏幕在睡眠前显着变暗的 halfdim 设置。我说的是在黑暗的房间里调暗屏幕并在明亮的房间里调亮屏幕的设置,这是不同的。
如果有人能指出我正确的方向,我会很高兴的。我假设它在 IOKit 中的某个地方处理,可能是处理屏幕亮度的 IOGraphics,或者在 IOKit/pwr_mgt 中的某个地方,但我找不到它。
谢谢
编辑:我知道您可以通过使用 AppleScript 解决系统偏好设置来做到这一点。我正在寻找真正的方法,如果它存在的话。
【问题讨论】:
-
Apple 几乎没有开源任何新驱动程序,大约自英特尔过渡以来,因此您可能需要进行一些调查才能找到这些(私有)API。 Amit Singh 的旧示例可能是一个好的开始——不过,较新的 Mac 型号可能使用不同的驱动程序(我没有带光传感器的型号,所以我不能告诉你)。您应该能够通过
ioreg或IORegistryExplorer工具找到设备和驱动程序类。如果 API 调用发生了变化,您可能可以跟踪现有应用程序使用的 IOService 用户方法,例如系统偏好设置。