OS X中的Kiosk模式:全屏在启动时不起作用

时间:2014-01-10 09:11:17

标签: macos fullscreen kiosk-mode

为了让应用程序在用户登录时自动以全屏模式打开,我尝试在自助服务终端模式下打开它,这样用户就无法关闭它或执行除使用此应用程序之外的任何其他操作。< / p>

AppDelegate中的以下代码仅在我手动启动应用程序时有效,但在启动时自动打开应用程序时无法全屏打开(我已将其添加到系统中首选项,帐户,登录项目):

-(void) awakeFromNib {
    NSApplicationPresentationOptions presentationOptions = (NSApplicationPresentationHideDock |
                                                            NSApplicationPresentationHideMenuBar |
                                                            NSApplicationPresentationDisableAppleMenu |
                                                            NSApplicationPresentationDisableProcessSwitching |
                                                            NSApplicationPresentationDisableForceQuit |
                                                            NSApplicationPresentationDisableSessionTermination |
                                                            NSApplicationPresentationDisableHideApplication);
    NSDictionary *fullScreenOptions = @{NSFullScreenModeApplicationPresentationOptions: @(presentationOptions)};
    [_window.contentView enterFullScreenMode:[NSScreen mainScreen] withOptions:fullScreenOptions];
}

有什么想法吗? 谢谢!

2 个答案:

答案 0 :(得分:0)

您可以尝试调用NSWindow的toggleFullScreen,并限制其视图相对于NSWindow的大小增长

答案 1 :(得分:0)

您的应用可能不是有效应用。应用程序的演示选项仅在其处于活动状态时生效。

在进入全屏之前,您可能需要[NSApp activateIgnoringOtherApps:YES]