11.2 Android Process States
Processes host applications and applications are made up of components. Within an Android system, the current state of a process is defined by the highest-ranking active component within the application that it hosts. As outlined in Figure 11-1, a process can be in one of the following five states at any given time:
Figure 11-1
11.2.1 Foreground Process
These processes are assigned the highest level of priority. At any one time, there are unlikely to be more than one or two foreground processes active and these are usually the last to be terminated by the system. A process must meet one or more of the following criteria to qualify for foreground status:
•Hosts an activity with which the user is currently interacting.
•Hosts a Service connected to the activity with which the user is interacting.
•Hosts a Service that has indicated, via a call to startForeground(), that termination would be disruptive to the user...