MIDlet UIDs

UID is an unique identifier for the installed MIDlet. During installation, a new UID is assigned to the MIDlet. This UID is used to uniquely identify the application in the device.

A pre-defined MIDlet UID (Unique ID) is useful in the following cases:

  • A native application can launch the MIDlet easily using the MIDlet's UID.

  • Pre-installed MIDlets can be shown in Active Idle shortcut. A pre-installed MIDlet requires a pre-defined UID.

Pre-defined UIDs are assigned with the Nokia-MIDlet-UID-<n> JAD attribute, where <n> is the MIDlet's identifier in the JAD file.

When installation of a MIDlet with pre-defined UID is started from JAD or JAR manifest, the actual installation result varies between unprotected and protected ranges. The following tables describe the installation results when using UIDs from different ranges.

Table: Installing MIDlets with protected range UIDs
 

Protected UID only in JAD

Protected UID only in MANIFEST

Protected UID in both

Install from JAD (unsigned)

Installation fails

Installation succeeds, UID is NOT used

Installation fails

Install from JAR (unsigned)

n/a

Installation fails

n/a

Install from JAD (signed)

Installation fails

Installation succeeds, UID is NOT used

Installation succeeds, UID is used

Install from JAR (signed)

n/a

n/a

n/a

Table: Installing MIDlets with unprotected range UIDs
 

Unprotected UID only in JAD

Unprotected UID only in MANIFEST

Unprotected UID in both

Install from JAD (unsigned)

Installation succeeds, UID is used

Installation succeeds, UID is NOT used

Installation succeeds, UID is used

Install from JAR (unsigned)

n/a

Installation succeeds, UID is used

n/a

Install from JAD (signed)

Installation fails

Installation succeeds, UID is NOT used

Installation succeeds, UID is used

Install from JAR (signed)

n/a

n/a

n/a

The following UID ranges are used:

  • Unprotected range 0xA0000000 – 0xAFFFFFFF

  • Protected range 0x20000000 – 0x2FFFFFFF

  • Test range 0xE0000000 – 0xEFFFFFFF

Using protected range requires that the MIDlet is signed and that the UID is specified in both JAD and JAR manifest.