I'm developing 3 apps that greatly overlap in services they require. I would like to develop a background service and have all 3 apps share with intents and providers. My question is, how do I create a common service for all 3 apps so that I don't have duplicate the services per each app. Another words, do I need to setup 4 apps where the 4th would be the service only and some how make that a prerequisite for the other 3 apps? The only thing I can think of is distribute the bg service along with every app and check if the service is already running from previously installed app. So in summary: Service(S), App(A), App(B), App(C) Apps A, B, C require services from S. These are paid apps. Alternatively I could install all 3 apps as a single large app and allow the user to purchase features and enable them in the single app, but I prefer the 3 separate App approach.