Java ME on Series 40 and Symbian platforms

The Series 40 and Symbian platforms have supported Java™ ME since their first releases, Series 40 1st Edition and S60 1st Edition, respectively. Series 40 2nd Edition and S60 2nd Edition FP2 were the first releases to support the JSR-185 Java Technology for the Wireless Industry (JTWI) specification, which defines an architecture for a uniform implementation of Java ME across mobile devices. JTWI was superseded by support for the JSR-248 Mobile Service Architecture (MSA) Subset specification from Series 40 5th Edition and S60 3rd Edition FP2 onwards. Like JTWI, MSA aims to minimize the fragmentation of Java ME implementations and thereby ensure application compatibility and portability across the broadest possible range of mobile devices. For more information about these two architecture specifications, see:

In addition to the mandatory CLDC and MIDP implementations, the Series 40 and Symbian platforms support a number of additional Java APIs for more specific purposes. The following figure summarizes the common APIs supported by both platforms as well as APIs exclusive to a platform. For detailed information about the APIs, including which API version is supported in which platform release, and which APIs are not supported on Series 40 Lite platforms, see section Supported Java APIs.

Figure: Supported Java APIs in Series 40 and Symbian

Java Runtime for Series 40

On Series 40 6th Edition FP1, Series 40 6th Edition Lite, and earlier Series 40 devices, the Java Runtime (JRT) is integrated into the Series 40 platform, with each platform release including its own updated version of the Java Runtime. For these platform releases, the Java Runtime is not versioned separately from the underlying platform. Instead, the Series 40 platform release effectively indicates the Java Runtime version as well.

After Series 40 6th Edition FP1 and Series 40 6th Edition Lite, the Java Runtime is named and versioned separately from the underlying platform as Java Runtime <version> for Series 40. The Java Runtime is versioned using three digits separated by periods ("x.y.z"): the first digit indicates the major version, the second digit indicates the minor version, and the third digit indicates the patch or build version.

Note: The versioning of Java Runtime for Series 40 has no relation to the versioning of the desktop Java Runtime Environment (JRE).

The following table lists those Java Runtime for Series 40 versions that introduce major or minor features or updates.

Table: Java Runtime for Series 40 versions

Version

New features

Java Runtime 1.0.0 for Series 40

New features

For a list of new Java features in earlier Series 40 platform releases, see article Series 40: Editions and Feature Packs in the Nokia Developer Wiki.

Java Runtime for Symbian

On S60 3rd Edition FP2 and earlier Symbian devices, the Java Runtime (JRT) is integrated into the Symbian platform, with each platform release including its own updated version of the Java Runtime. For these platform releases, the Java Runtime is not versioned separately from the underlying platform. Instead, the Symbian platform release effectively indicates the Java Runtime version as well.

From S60 5th Edition onwards, the Java Runtime is decoupled from the underlying platform, so that the Java Runtime version supported by a device can be updated separately from the underlying platform. This also means that devices that are based on the same platform release can support different Java Runtime versions. The Java Runtime is therefore versioned separately from the underlying platform. This decoupled Java Runtime implementation for Symbian devices is called Java Runtime for Symbian.

Note: The versioning of Java Runtime for Symbian has no relation to the versioning of the desktop Java Runtime Environment (JRE). For more information, see article Naming and versioning of Java Runtime for Symbian in the Nokia Developer Wiki.

The Nokia Developer Wiki provides detailed release notes for each Java Runtime for Symbian version. The release notes list the new features in the version, significant issues that have been fixed, and the Symbian devices the version is shipping in.

The following table lists the different Java Runtime for Symbian versions. For each version, the table also lists the Symbian platform releases in which the version ships and provides links to information about the new features in the version.

Table: Java Runtime for Symbian versions

Version

Platform release

New features

Java Runtime 2.2 for Symbian

Symbian^3

New features

Java Runtime 2.1 for Symbian

Symbian^3

Java Runtime 2.1 for Symbian is also available for S60 5th Edition via Nokia Beta Labs.

New features

Java Runtime 1.4 for S60

S60 5th Edition

New features

Java Runtime 1.3 for S60

S60 5th Edition

New features

For instructions on how to retrieve the Java Runtime for Symbian version on a device, see section Determining the Java Runtime for Symbian version.