From what I understand, there are two types of intents:
1) Static intents that you define in your manifest and will start your service even if the service it not running so that it can handle the intent. And I do not believe that the service that handles static intent needs to display an icon in the status bar. However, only certain intents can be defined as static - not all intents can be setup as static.
2) Dynamic intents are intents that you define at runtime, but your service must be running to receive and handle dynamic intents - they will NOT auto-start your service. And to make sure your service keeps running (to handle dynamic intents), it may be required to show a notification icon when your service is running.