Application Management Software

Note: Application Management Software (AMS) is known as Java Application Manager (JAM) in Series 40 platform. For purposes of this library, the term AMS is used to refer to both, except where otherwise indicated.

Figure 11: A Connect MIDlet being launched

The core of the MIDlet lifecycle is the AMS, which provides the context for all MIDlet activities. When a mobile device user selects a MIDlet for execution, the AMS instantiates it by calling the MIDlet's startApp method, which starts the lifecycle of the MIDlet. The AMS maintains control over the MIDlet lifecycle throughout its execution. There are no explicit restrictions to the number of MIDlets that can run simultaneously, although the AMS can release resources by terminating inactive MIDlets or pausing active ones. The AMS does not make a distinction between MIDlets and native applications, both of which are managed equally by the system.

The AMS controls what is shown on the device display using the concepts of foreground and background. Only one application is active at a time, and it is in the foreground, with all the other running applications relegated to background. The interaction between these two states is as follows:

In addition to managing the display, AMS also organizes the MIDlet runtime states. If a sudden event that requires processing resources or input functions - such as a phone call - takes place, the AMS places the currently running application to background and receives the phone call in normal fashion.

For more information on MIDlet lifecycle, see MIDlet specification.