Foreground services continue running even when the user isn't interacting with the app.
4 of 9
Background Service
A background service performs an operation that isn't directly noticed by the user. For example, if an app used a service to compact its storage, that would usually be a background service.
5 of 9
Bounded Service
Bound A service is bound when an application component binds to it by calling bindService().
A bound service offers a client-server interface that allows components to interact with the service, send requests, receive results, and even do so across processes with interprocess communication (IPC).
A bound service runs only as long as another application component is bound to it.
Multiple components can bind to the service at once, but when all of them unbind, the service is destroyed.
The system invokes this method to perform one-time setup procedures when the service is initially created (before it calls either onStartCommand() or onBind()).
If the service is already running, this method is not called.