Motorola C450 User Manual

Page of 86

Application Management  
 
25 
MIDlet Suite Updating 
When a MIDlet Suite is de-installed, all of its resources are removed including any 
resources that were created by the MIDlets in the suite, such as RMS databases. If a user 
gets a new version of a MIDlet Suite, then the user can simply download that new version 
to the device that has the older version installed. Once the new version is downloaded, 
the user will have the option to update the MIDlet Suite, causing the old version to be de-
installed, followed by the immediate installation of the new MIDlet Suite.  
A newer version of the MIDlet Suite should know how to use, upgrade, or remove the data 
in the RMS databases created by older versions. This idea of forward compatibility should 
not be extended to backward compatibility, because the C370, C450, and C550 device 
will not allow a user to update a version of a MIDlet Suite with an older or equal version of 
that MIDlet Suite. If an older or equal version attempts to be installed, the C370, C450, 
and C550 will ignore the installation and launch the current version of the MIDlet suite.  
Starting, Pausing, and Exiting: AMS Control of MIDlet 
State Transitions 
A MIDlet has three different states: Destroyed, Active, and Paused. A MIDlet’s natural 
state is destroyed. The AMS typically controls the transition through these states. When a 
user decides to launch a MIDlet, the device puts up a screen indicating that the MIDlet is 
transitioning through these states. The AMS notifies MIDlets about state transitions by 
calling the MIDlet’s methods, 
startApp(),
 
pauseApp(),
 and 
destroyApp().  
The figure below shows the MIDlet starting screen. 
 
Note: This image reflects a 176 x 220 display for document readability purposes only. The 
C370, C450, and C550 maintain a 96 x 64 display. 
 
The constructor of the MIDlet’s class that extends MIDlet is first invoked. Then its 
startApp()
 method is called to indicate that it’s being started. The MIDlet will have 
focus when its 
startApp()
 method finishes execution.  If a MIDlet takes too long