Sunday, August 20, 2006

Mobile Java

This is the third posting in the series exploring mobile technology platforms. For introduction to the series please refer to: "What technology platform to choose for development of mobile applications?"

Other postings in the series:
Mobile Messaging
Mobile Web

Mobile Java

Java 2 Platform Micro Edition (J2ME) is a subset of the Java Platform that is designed specifically for smaller devices. The Java platform encompasses Java programming language, Java Virtual Machine (JVM) which runs on top of an operating system and executes Java code, and a set of standard class libraries or application programming interfaces (APIs). J2ME, in comparison to Standard Edition (J2SE) and Enterprise Edition (J2EE), uses smaller JVM and supports smaller set of APIs.

J2ME is divided into configurations and profiles designed for different categories of devices. Configurations define exact set of supported APIs and detail JVM specification. Profiles extend configurations by adding more specific APIs to the configuration. Configuration applicable to mobile devices is called Connected Limited Device Configuration (CLDC). It was designed for smaller devices with intermittent network connectivity. Another example of configuration is Connected Device Configuration (CDC) which has been designed for Internet Appliances. Mobile Information Device Profile (MIDP) is a profile based on CLDC. Mobile Java applications are developed for the specific profile. MIDP programs, also known as MIDlets, would run on any device supporting MIDP.

There are two variants of MIDP – MIDP 1.0 which runs on top of CLDC 1.0 and newer MIDP 2.0 which runs on top of CLDC 1.1. Both MIDP 2.0 and MIDP 1.0 devices are currently on the market.

A variety of tools support J2ME application development. Sun offers the Sun Java Wireless Development Toolkit (http://java.sun.com/products/sjwtoolkit/) and NetBeans Mobility Pack (http://developers.sun.com/prodtech/javatools/mobility/ ). The toolkit provides a complete but rudimentary set of development tools. NetBeans is an Integrated Development Environment (IDE). Other IDEs that support mobile development include JBuilder/Mobile Studio form Borland, WebSphere Studio Device Developer from IBM, and EclipseME. Phone manufacturers provide Software Development Kits (SDKs) that are tailored to their particular devices.

0 Comments:

Post a Comment

<< Home