beautypg.com

Midlets, Midlet documentation, Midlet life cycle – Siemens Java TC65 User Manual

Page 34: 6 midlets, 1 midlet documentation, 2 midlet life cycle

background image

TC65 JAVA User's Guide
Strictly confidential / Released

s

TC65 JAVA User's Guide_V05

Page 34 of 90

26.09.2005

6 MIDlets

The J2ME™ Mobile Information Device Profile (MIDP) provides a targeted Java API for
writing wireless applications. The MIDP runs on top of the Connected Limited Device
Configuration (CLDC), which in turn, runs on top of the J2ME™. MIDP applications are
referred to as MIDlets. MIDlets are controlled by the mobile device implementation that
supports the CLDC and MIDP. Since IMP-NG is a subset of MIDP 2.0, IMP includes MIDlets.
The MIDlet code structure is very similar to applet code. There is no main method and
MIDlets always extend from the MIDlet class. The MIDlet class in the MIDlet package
provides methods to manage a MIDlet’s life cycle.

6.1 MIDlet

Documentation

MIDP and MIDlet documentation can be found at

http://wireless.java.sun.com/midp/

and in

the html document directory of the wtk,
…\Siemens\SMTK\TC65\wtk\doc\index.html

6.2

MIDlet Life Cycle

The MIDlet life cycle defines the protocol between a MIDlet and its environment through a
simple well-defined state machine, a concise definition of the MIDlet’s states and APIs to
signal changes between the states. A MIDlet has three valid states:

Paused – The MIDlet is initialised and is quiescent. It should not be holding or using any

shared resources.

Active – The MIDlet is functioning normally.
Destroyed – The MIDlet has released all of its resources and terminated. This state is only

entered once.


State changes are affected by the MIDlet interface, which consists of:
pauseApp() – the MIDlet should release any temporary resources and become passive.

startApp() – the MIDlet starts it’s execution, needed resources can be acquire here or in

the MIDlet constructor

destroyApp() – the MIDlet should save any state and release all resources
• Note: destroyApp() is called when a MIDlet should terminate caused by device.
notifyDestroyed() – the MIDlet notifies the application management software that it has

cleaned up and is done

• Note: the only way to terminate a MIDlet is to call notifyDestroyed(), but destroyApp() is

not automatically called by notifyDestroyed().

notifyPaused() – the MIDlet notifies the application management software that it has

paused

resumeRequest() – the MIDlet asks application management software to be started again.

° getAppProperty() – gets a named property from the MIDlet