【问题标题】:Adding item to Contextual menu and send highlighted text to other app on MacOS将项目添加到上下文菜单并将突出显示的文本发送到 MacOS 上的其他应用程序
【发布时间】:2017-01-07 23:57:33
【问题描述】:

我正在尝试向 MacOS 的全局上下文菜单中添加一个项目。不是用户,而是我正在编写的应用程序。

场景如下:

  1. 用户安装了我的应用程序,它应该将项目添加到上下文菜单中。
  2. 在另一个程序中,用户突出显示某些文本并“右键单击”/调出上下文菜单,其中应显示我的应用程序添加的项目。

有人知道怎么做吗? 我似乎找不到任何关于如何在没有用户将其添加为他们自己的服务的情况下将项目添加到 macos 中的全局上下文菜单的文档。我不想在安装应用程序时这样做。

【问题讨论】:

  • 我正试图找出如何去做这件事。我没有尝试过,因为我不知道该怎么做。
  • 但我没有任何代码,因为我不知道从哪里开始。我只是想朝着正确的方向前进,看看是否有人知道如何去做。

标签: swift macos


【解决方案1】:

您所描述的内容称为“服务”。该设施通常被称为 Cocoa Services。有关如何让您的应用提供服务的详细信息,请参阅Services Implementation Guide

【讨论】:

  • 就我所知。但我不知道也找不到是否可以以某种方式自动将服务添加到上下文菜单中。
  • 操作系统会处理这个问题。您的应用会宣传该服务及其处理的数据类型。当另一个应用程序打开上下文菜单或应用程序菜单的服务子菜单时,系统会询问它可以提供什么样的数据(通常是从它的选择中)并显示可以处理这种数据的服务。所以,是的,只要适用,您的服务就会出现在上下文菜单中。
【解决方案2】:

另一种解决方案是创建一个分享扩展

您可以阅读有关扩展程序 here 的信息,特别是有关共享扩展程序 here 的信息。

【讨论】:

  • 谢谢,但服务的另一个答案是我正在寻找的更多
猜你喜欢
  • 2011-05-12
  • 2022-06-10
  • 1970-01-01
  • 1970-01-01
  • 2017-12-09
  • 2010-12-14
  • 1970-01-01
  • 2013-01-09
相关资源
最近更新 更多