如何解决AppleScript快速行动服务快捷方式问题-MacOS Catalina
运行于:MacOS Catalina 10.15.5
我在Automator中进行了快速操作,效果很好。实际上,我已经使用了几年了。动作中的代码本身不是问题,也不是系统首选项中的可访问性/控件。我的问题是至少可以说令人难以置信,而且我似乎无法弄清楚并以为我会问蜂巢的头脑。
使用AppleScript快速操作并确保“工作流收到:在任何应用程序中都没有输入”后,像往常一样进行操作,然后进入并在“系统偏好设置”->“键盘”中为快捷方式分配键“ F13” ->快捷方式->服务,一切似乎都很棒。
在应用程序中,我使用此快捷方式,如果我将鼠标悬停在应用程序主下拉菜单上,并将鼠标悬停在“服务”上,则该项目在那里,并且具有与之关联的快捷方式“ F13”。如果我从下拉菜单中选择快捷方式,则它可以正常运行。
这是问题所在,如果我在键盘上按“ F13”,则该服务连续运行3次。就像系统服务认为我要运行该特定项目3x一样。我也尝试了许多不同的快捷键(简单到:F13,复杂到⌘⌥⌃⇧N),并且快捷键也没有产生任何积极的结果。
我到处检查过,似乎找不到发生这种情况的原因。任何见解/帮助将不胜感激。这不是AppleScripting问题。由于某种原因,OS导致在服务菜单项上进行三重选择。似乎也不是重复键的问题。
谢谢!
解决方法
尽我所知,问题不是工作流运行了三次,而是出现了一系列三个安全错误消息。似乎当您尝试使用键盘快捷键运行服务时,系统会调用xpc服务(位于automator应用程序包内的com.automator.runner.xpc),并且该服务正在触发安全警报,因为它没有没有GUI脚本所需的可访问性权限。没有明显的方法可以授予xpc适当的权限(而且我怀疑无论如何这将是一个巨大的安全漏洞),所以这是行不通的。
但是,有一种解决方法。取得运行中的脚本,将其复制到新的脚本编辑器窗口中,然后使用保存窗口左下方的“文件格式”下拉菜单将其保存为应用程序:
授予此应用程序权限以使用辅助功能:
- 系统偏好设置→安全和隐私→隐私→可访问性
现在在自动化器中创建一个服务,该服务使用Launch Application
操作启动您刚创建的脚本应用程序。将键盘快捷方式分配给该服务,然后一切就可以正常工作了。
当然,这会启动一个应用程序,将其显示在Dock中并暂时抓住前景,这可能会引起视觉上的干扰。如果希望它在后台静默运行,请执行以下操作:
-
右键单击脚本应用程序的图标,然后选择
Show Package Contents
。 -
向下钻取两个级别以找到
info.plist
文件,然后在TextEdit,BBEdit或其他一些纯文本编辑器中将其打开 -
将以下键/值对添加到文件中(小心不要破坏其他键/值组):
<key>LSUIElement</key> <true/>
-
保存info.plist文件,然后再次运行该应用程序;应该不露面。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。