Applications that are “registered” with “Launch Services” as a user interface application receive icons. Technically speaking, everything that ends with an LSApplicationCheckIn call will get one, but it is not a call you can make yourself.
If you start the standard NSRunLoop or even initialize NSApplication ( [NSApplication sharedApplication] ), you should get it.
My question is: what are you doing that are not getting it?
source share