2017-08-09 72 views
8

是否可以监听/观察macOS接收到的新通知?观察新系统通知OSX

我的意思是,当一个新的iMessage或松弛的消息被接收(导致通知中心显示通知所以基本上一切)喜欢

回答

4

简短的回答:这是不可能的。

除非应用程序提供特定的API,否则无法观察由应用程序发送的用户通知。例如,iMessage和Mail的AppleScript字典包含脚本可以响应的事件。但是,用户通知被封装在目标应用程序中。


有一个名为DistributedNotificationCenter一个全球性的通知类,通知调度机制,支持跨边界的任务通知的广播。某些进程正在发送分布式通知,但它与UserNotification完全不同。例如,TimeMachine引擎进程backupd在运行备份时发送分布式通知。

您可以订阅的所有分布式通知与

DistributedNotificationCenter.default().addObserver(self, selector: #selector(handleNotifications(_:)), name: nil, object: nil) 

,但我怀疑,在收到消息后的iMessage发送分配通知。