作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
使用 Objective-C,如何以编程方式检查 OS X 上系统“请勿打扰”设置的状态?我可以使用 hack 或私有(private) API,因为我不需要提交到 Mac App Store。
最佳答案
您可以(并且应该)简单地使用 UserDefaults:
let theDefaults = UserDefaults(suiteName: "com.apple.notificationcenterui")
print(theDefaults?.bool(forKey: "doNotDisturb"))
对于时间控制的切换,您应该检查一天中的分钟是否位于 dndStart
和 dndEnd
之间:
let theDefaults = UserDefaults(suiteName: "com.apple.notificationcenterui")
let theDate = Date()
let theCalendar = Calendar.current
let theHour = calendar.component(.hour, from: theDate)
let theMinute = calendar.component(.minute, from: theDate)
let theMinuteOfDay = Double(theHour * 60 + theMinute)
if theMinuteOfDay >= theDefaults.double(forKey: "dndStart") &&
theMinuteOfDay <= theDefaults.double(forKey: "dndEnd") {
// ...
}
关于objective-c - 以编程方式检查 OS X 上的请勿打扰状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26311482/
我是一名优秀的程序员,十分优秀!