Android Studio versión 2.3
Puede crear un servicio sin una actividad principal siguiendo unos sencillos pasos. Podrás instalar esta aplicación a través de Android Studio y depurarla como una aplicación normal.
Primero, cree un proyecto en Android Studio sin una actividad. Luego cree su clase de servicio y agregue el servicio a su AndroidManifest.xml
<application android:allowBackup="true"
android:label="@string/app_name"
android:icon="@mipmap/ic_launcher"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<service android:name="com.whatever.myservice.MyService">
<intent-filter>
<action android:name="com.whatever.myservice.MyService" />
</intent-filter>
</service>
</application>
Ahora, en el menú desplegable al lado del botón "Ejecutar" (flecha verde), vaya a "editar configuraciones" y dentro de las "Opciones de lanzamiento" elija "Nada". Esto le permitirá instalar su Servicio sin que Android Studio se queje de no tener una Actividad principal.
Una vez instalado, el servicio NO se ejecutará, pero podrá iniciarlo con este comando de shell adb ...
am startservice -n com.whatever.myservice/.MyService
Puede comprobar que se está ejecutando con ...
ps | grep whatever
No lo he intentado todavía, pero es probable que Android Studio también inicie el servicio automáticamente. Esto se haría en el menú "Editar configuraciones".