Feature description

The Mobile Information Device Profile (MIDP) v2.1 for the Java Platform, Micro Edition (Java ME™) defines an enhanced architecture and the associated APIs required to enable an open, third-party, application development environment for mobile devices.

The MIDP 2.1 specification is based on the MIDP 1.0 and MIDP 2.0 specifications and provides backward compatibility with MIDP 1.0 and MIDP 2.0 so that MIDlets written for MIDP 1.0 or MIDP 2.0 can execute in MIDP 2.1 environments. It is included in from 3rd Edition Feature Pack 2 and Series 40 5th Edition onwards. The MIDP 2.1 API is supported in its entirety as specified in the JSR-118 specification.

Supported features

  • The MIDP implementation supports a single display for each active MIDlet with at most one active Displayable at a time.

  • All UI callbacks are serialized, and they never occur in parallel, although timer callbacks may run concurrently with UI event callbacks.

  • MIDP API is thread-safe. Methods can be called from callbacks, TimerTasks or other threads created by the application.

  • The MIDP implementation provides full support for standard key codes for the ITU-T keypad (0-9, *, #).

  • Canvas repeat events are supported.

  • Double-buffered graphics are supported.

  • Repainting is done automatically for all screens, except for Canvases. A MIDlet using Canvas must call the repaint() method to paint the contents. However, this does not ensure that the screen is updated with the contents of the Canvas immediately. The MIDlet may have to force this by flushing all the pending repaint() requests by calling the method serviceRepaints().

  • The Text input elements such as the TextField and TextBox support various text input modes (for example, writing language, predictive input, and numbers-only input mode) that are consistent across Java and native applications.

Excluded features in Series 40

  • No Series 40 device has a jog dial. Therefore the corresponding jog dial requirements from the MIDP API specification are not implemented.

  • Canvas motion and Canvas pointer events are not supported in Series 40 6th Edition and earlier releases.