防止沙盒应用程序中出现 Cmd+Shift+Q 警报
Posted
技术标签:
【中文标题】防止沙盒应用程序中出现 Cmd+Shift+Q 警报【英文标题】:Prevention of Cmd+Shift+Q alert emergence in sandboxed application 【发布时间】:2013-03-20 06:56:15 【问题描述】:我在我的应用程序中用自己的窗口挡住了屏幕。我需要防止出现这个由 Cmd+Shift+Q 系统热键调用的警报。
【问题讨论】:
为什么要对应用程序进行沙盒处理?我很怀疑你能不能把它放到 App Store 里。 我的应用是这样的itunes.apple.com/us/app/keycard/id578513438?mt%3D12 【参考方案1】:您要查找的内容称为kiosk mode。您可能想要阻止几件事,包括“会话终止”(注销命令等)、应用程序切换和 Exposé 以及 Apple 菜单;该文档描述了如何阻止您想要阻止的任何项目。
【讨论】:
NSApplicationPresentationDisableAppleMenu - 这就是我要找的!谢谢! @myke:不要以为 DisableAppleMenu 会完全阻止注销。还有其他不涉及 Apple 菜单的退出系统的方法。 您能告诉我使用这些选项打开全屏应用程序的其他方法吗? NSApplicationPresentationOptions 选项 = NSApplicationPresentationHideDock | NSApplicationPresentationHideMenuBar | NSApplicationPresentationDisableAppleMenu | NSApplicationPresentationDisableForceQuit | NSApplicationPresentationDisableProcessSwitching | NSApplicationPresentationDisableSessionTermination | NSApplicationPresentationDisableHideApplication; @myke:我不明白你所说的“打开我的全屏应用”是什么意思。 当我用全屏窗口阻塞屏幕时,我将这些演示选项用于 NSApp,屏幕上只有 NSTextField 用于密码输入。正确的密码必须是解锁我的 Mac 的唯一方法(“电源”按钮除外;))以上是关于防止沙盒应用程序中出现 Cmd+Shift+Q 警报的主要内容,如果未能解决你的问题,请参考以下文章