Closed mpco closed 5 years ago
com.apple.AmbientLightSensorHID.PreferencesChanged
谢谢
使用 F14、F15 或者 Fn 功能键 可以调节屏幕亮度,你可以看看 系统偏好设置>键盘>快捷键>显示。
不知道是不是,只有亮度传感器检测到变化时才会发送 com.apple.AmbientLightSensorHID.PreferencesChanged
,而快捷键手动调节屏幕亮度不会发送?
我试了下,没有收到通知,但是不知道这个代码有错没
import Cocoa
@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate {
func applicationDidFinishLaunching(_ aNotification: Notification) {
DistributedNotificationCenter.default().addObserver(self, selector: #selector(updateForBrightnessChange), name: .brightnessDidChange, object: nil)
}
@objc func updateForBrightnessChange() {
print("## Bright changed")
}
}
extension Notification.Name {
static let brightnessDidChange = Notification.Name(
"com.apple.AmbientLightSensorHID.PreferencesChanged"
)
}
我这边用键盘调节亮度(且最终亮度发生了变化)是会有这个通知的。
我会考虑考虑是否需要额外监听这两个键
版本:1.1.4 系统:10.14.3
有个疑问:当 App 通过亮度阈值或定时判断并开启 暗色模式 时,我手动切换到 亮色模式,App 会怎么处理?之后还会自动切换到 暗色模式 吗?
另外,开启根据亮度自动切换后,使用快捷键调节亮度至应该自动切换的范围时,App 没有正常工作。在 App 偏好设置中,关闭并重新开启基于亮度的自动调节时,App 会切换一次暗色/亮色模式。 不过我用的 黑苹果,也可能有所影响。