我已经向Mac App Store提交了一个帮助应用程序(使用LSUIElement)。我误以为App Store安装过程会为帮助应用程序设置一个停靠图标。
如果状态栏应用程序独立运行(如热门应用程序Caffeine),如何创建用户可以删除的停靠图标?我是否需要创建一个加载LSUIElement应用程序的非LSUIElement应用程序,还是有更好的方法?
答案 0 :(得分:19)
使用NSApplication的setActivationPolicy:
方法,而不是使用LSUIElement。默认情况下,应用程序将具有停靠图标,但通过将激活策略更改为NSApplicationActivationPolicyAccessory
,您可以获得与LSUIElement相同的效果,同时能够以编程方式更改它(NSApplicationActivationPolicyAccessory的文档说它等同于LSUIElement = 1)。
- (void)applicationDidFinishLaunching:(NSApplication *)app {
if([[NSUserDefaults standardUserDefaults] boolForKey:@"HideDockIcon"])
[NSApp setActivationPolicy:NSApplicationActivationPolicyAccessory];
}
答案 1 :(得分:1)
显然,我的应用评论员(实际上有两个)误导了我。安装过程为您创建了停靠栏图标 。按下这个问题,我能够通过审核过程获得应用程序。