This blog is subject the DISCLAIMER below.

Saturday, February 24, 2007

Explore the Java Platform- part3 APIs (J2ME-Configurations and profiles)

3.1.1 CLDC
The Connected Limited Device Configuration (CLDC) is a specification for applications targeted at devices with very limited resources such as pagers and mobile phones. The CLDC was developed under the Java Community Process as JSR 30 (CLDC 1.0) and JSR 139 (CLDC 1.1).

Typical requirements
16-bit CPU, a total of 160 KB memory available to the Java platform, as well as a limited connection to some kind of network.

Designed for cell phones, it supports an LCD orientated GUI API, with MIDP 2.0 including a basic 2D gaming API. Applications written to use this profile are called MIDlets. Almost all new cell phones come with a MIDP implementation, and it is now the de facto standard for downloadable cell phone games.

The Information Module Profile
(JSR 195) is designed for vending machines, network cards, routers, telephone boxes and other systems with either simple or no display and some form of limited two way network access. Only APIs for application creation, storage, and network access are defined. These are a subset of the, rms and midlet packages in MIDP. Siemens Mobile and Nokia put forward this specification to the JCP.

The DoJa profile was designed for DoCoMo's i-mode mobile phone by NTT DoCoMo.

General APIs

3.1.2 CDC
The Connected Device Configuration (CDC) is a framework for building J2ME applications on embedded devices ranging from pagers up to boxes. The CDC was developed under the Java Community Process as JSR 36 (CDC 1.0) and JSR 218 (CDC 1.1).

Typical Requirements
32-bit CPU, 2 MB of RAM, and 2.5 MB of ROM.

Three profiles are based on the CDC
Foundation Profile
Java SE-like API
No graphical user interface (GUI)

Personal Basis Profile
Extension to Foundation Profile
Lightweight GUI support

Personal Profile
Extension to Personal Basis Profile
Full AWT and applet support
Easy to port PersonalJava-based applications

3.1.3 Getting into action
The previous sections described an overview of the components of the J2ME which appears easy, simple and small, although; do not trust the first impression, J2ME applications are considered the most challenging applications to develop, because getting yourself used to limited libraries is a difficult task, specially for CLDC which provides a very basic set of functionality. J2ME developer must always put system resources in the first priority, especially when developing an application that depends on resources in the first place such as a game. You can get J2ME resources from