我目前正在编写一个实现自定义 URL 方案的 OS X 应用程序。按照设计,我的应用程序会相对频繁地(大约每 2-4 分钟)打开来自外部源的 URL。但是,这需要在后台完成(即没有 GUI 或事件应用程序的切换)。这是一个状态栏应用程序(Application is agent (UIElement)
设置为 YES
),并且 Application UI Presentation Mode
设置为 全部抑制
。虽然这些确实阻止了在打开相关 URL 时显示任何 UI 元素,但当时处于事件状态的任何应用程序窗口都会失去焦点。显然,每隔几分钟就不能专注于您正在工作的任何窗口,那么在打开自定义 URL 时如何防止这种行为?
最佳答案
我找到了答案。如果其他人遇到过这个问题:
我从 plist 中删除了 Application UI Presentation Mode
和 Application is agent (UIElement)
键。我将 Application is background only
设置为 YES
。成功了。现在打开 URL 时当前窗口不再失去焦点。
关于objective-c - OS X 在后台打开 URL 方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31733563/