我的后台应用程序(LSUIElement模式)在启动时会短暂显示一个窗口,让用户知道它已经启动。
当应用程序作为登录项启动时,一些用户选择通过选中用户和组控制面板的登录项中的“隐藏”选项来隐藏此启动窗口。
虽然此隐藏选项有效地隐藏了启动窗口,但它也隐藏了我的应用程序显示其窗口的任何进一步尝试,除非它使自己成为前端(活动)应用程序,由于此应用程序的性质,这通常是不希望的.
因此,我需要了解我的应用程序是否以这种隐藏模式启动,以便它可以短暂地把自己带到前面。
(我不喜欢总是在启动时激活应用程序,因为它会导致轻微的闪烁,我希望在正常(即未隐藏)启动时避免这种闪烁。)
我还检查了Detect that os x app was started as login item? ,但是由于 LSUIElement 应用程序根本不会调用 applicationWillBecomeActive: 除非它们自己激活,这对我没有帮助。