How do you create a GUI-Less Application that runs in the background without appearing in the dock or in the application switcher.
+4
A:
If it's a background application the still needs to interact with the user, see LSUIElement. If it's really just called to do some processing and never talks to the user at all, you can just make it a Foundation tool or really any other kind of plain vanilla program.
Chuck
2010-04-02 14:58:43
+1
A:
You need to set either LSUIElement (Application is Agent) or LSBackgroundOnly (Application is background only) in your app's Info.plist. LSUIElement is usually for status bar apps, and LSBackgroundOnly for apps that have no UI at all.
You can Apple's documentation on these flags here.
Shawn Craver
2010-04-02 19:19:18
Thanks for the tips and they work but one question. 1. How would i launch my helper app at the same time as my larger app. 2. How would i interchange data between the two apps while they are both running?
Jack
2010-04-04 11:45:05
For launching the helper app, take a look at [NSWorkspace](http://developer.apple.com/mac/library/documentation/cocoa/Reference/ApplicationKit/Classes/NSWorkspace_Class/Reference/Reference.html#//apple_ref/doc/uid/20000391-launchApplication_), and [NSDistributedNotificationCenter](http://developer.apple.com/mac/library/DOCUMENTATION/Cocoa/Reference/Foundation/Classes/NSDistributedNotificationCenter_Class/Reference/Reference.html) is a good option for basic IPC.
Shawn Craver
2010-04-06 14:03:49