How to get the CLDC and MIDP version from a J2ME program
By: Ivan Lim
The CLDC/MIDP supports system properties, which are key-value pairs that represent information about the platform and environment in which MIDP applications execute. Conceptually these are the same type of properties that you find in J2SE. Unfortunately, there is no java.util.Properties class in CLDC/MIDP to facilitate your handling of properties.The MIDP specification defines only a small set of standard
properties, which are shown in Table
3.4. Implementations may support
additional, manufacturer-specific system properties, but these
are nonstandard. You should be aware of what manufacturer- or
platform-specific features you use
in order to anticipate portability issues.
Like J2SE applications, MIDP applications can retrieve a system
property using the
java.lang.System class. To retrieve
the value of a property, use the System class
method
String getProperty(String key)
This method retrieves the property value associated with the key
whose value is specified in the
call.
Standard CLDC System Properties
Property | Key Description | Default Value |
microedition.configuration | Name and version of the supported configuration | CLDC-1.0 |
microedition.encoding | Default character encoding set used by the platform | ISO8859-1 |
microedition.locale | Name of the platform's current locale | null |
microedition.platform | Name of the host platform or device | null |
microedition.profiles | Names of all supported profiles | null |
A sample J2ME
program illustrates the
retrieval of system properties in a MIDlet.
MIDlets have direct access to all four of the standard system properties defined by the CLDC specification.
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.midlet.MIDlet;
/**
Creates the "Hello world" program in J2ME MIDP.
Note that the class must be public so that the device
application management software can instantiate it.
*/
public class HelloWorld extends MIDlet
{
...
public void startApp()
{
// Create a Displayable widget.
form = new Form("Hello World");
// Add a string to the form.
String msg = "My first MIDlet!";
form.append(msg);
// This app simply displays the single form created
// above.
display = Display.getDisplay(this);
display.setCurrent(form);
printSystemProperties();
}
/**
Prints the values of the standard system properties
using the System.getProperty() call.
*/
protected void printSystemProperties()
{
String conf;
String profiles;
String platform;
String encoding;
String locale;
conf = System.getProperty("microedition.configuration");
System.out.println(conf);
profiles = System.getProperty("microedition.profiles");
System.out.println(profiles);
platform = System.getProperty("microedition.platform");
System.out.println(platform);
encoding = System.getProperty("microedition.encoding");
System.out.println(encoding);
locale = System.getProperty("microedition.locale");
System.out.println(locale);
System.out.println();
}
}
Notice the addition of the call to the method printSystemProperties() at the end of the startApp() method. This method simply retrieves and prints to standard output the values of the five standard MIDP system properties. The data that the program writes to standard output is shown next:\
CLDC-1.0
MIDP-1.0
j2me
ISO-8859-1
en_US
Archived Comments
1. That worked great. Thanks for the the tutorial. +1 ed this post & best of luck.
View Tutorial By: Arman Hossain at 2011-10-20 13:27:30
2. Please tell me the process, how to compile the midlet. I have a wtk2.5.0 and jdk1.5.0 send me one e
View Tutorial By: Manish at 2008-11-14 13:33:43
3. I am looking for a J2ME programmer that can create a simple application that sends a cellular phones
View Tutorial By: Gary Wallis at 2007-10-14 15:35:00
Comment on this tutorial
- Data Science
- Android
- AJAX
- ASP.net
- C
- C++
- C#
- Cocoa
- Cloud Computing
- HTML5
- Java
- Javascript
- JSF
- JSP
- J2ME
- Java Beans
- EJB
- JDBC
- Linux
- Mac OS X
- iPhone
- MySQL
- Office 365
- Perl
- PHP
- Python
- Ruby
- VB.net
- Hibernate
- Struts
- SAP
- Trends
- Tech Reviews
- WebServices
- XML
- Certification
- Interview
categories
Related Tutorials
Code sample to Send SMS from a J2ME application.
Adding your own Application icon for your J2ME application (jar file)
Play a multimedia file in J2ME Program (Audio/Video) using MMAPI
Using HttpConnection in J2ME (Retrieve web content from a website to a phone)
Using HTTP vs UDP vs Socket in J2ME
RMSCookieConnector - Using Cookies in J2ME
Client Server in J2ME (Socket Programming sample)
Datagrams in J2ME (UDP Programming sample)
POST UTF-8 encoded data to the server in J2ME
Using alerts and tickers in J2ME
Using List to create a Menu and Menu items in J2ME
lists, forms, choices, gauges, text fields, text boxes in J2ME
Timer and TimerTask example in J2ME