AppleScripts:显示通知太快,无法正常显示

时间:2018-04-14 23:57:33

标签: applescript

我不记得最近这是否发生了变化(我在10.13),但是当我在快速循环中调用显示通知时,通知会更改为" N个新通知"。对我的大部分剧本完全没有帮助。

我试图偶尔用

调用通知
if notificationCount / someDenom = (notificationCount / someDenom) as integer then display notification "etc."

如果循环将花费多长时间,则可以使用已知数量。但有一半时间,我有时会在本地驱动器上调用脚本,有时通过网络调用脚本,结果是不可预测的。我要么没有足够频繁的通知,要么有时会崩溃到太多的显示中。

认为完全有可能将其纳入macOS,除了上述内容之外我无能为力,但认为有人可能有一个好主意。

[编辑添加:只有一个我自己,一个子程序,它记录了自上次调用以来的日期戳和经过的时间,然后只有N秒过去才调用通知。我试一试。]

[再次编辑:嗯,技术上有效,但每次通知增加0.68秒,这在紧凑的循环中成本相当高。]

1 个答案:

答案 0 :(得分:1)

不确定这是否是您要查找的内容,但它适用于脚本:

delay 1
display notification "uno momento..."
delay 1
display notification "it works!"

意思是,找出一种在通知之间不出现延迟的方法,以便在您需要的时间之前不播放延迟时间。我发现使用1秒钟是可以的,因为用户将以这种速度阅读,并且这使操作系统有足够的时间赶上并确保按顺序列出所有通知,并且所有通知都显示给用户/显示给用户。

我发现我还必须在第一个通知中包含一个 prior 延迟,如果要在一个组中发送通知...同样要确保第一个通知正确显示。