How to get Phone IMEI number with J2ME / JavaME

 

International Mobile Equipment Identity (IMEI) is used to identify valid devices connected to GSM and UMTS network. This number can be accessed from a mobile phone by dialing *#06# on the keypad. IMEI is commonly use by software developers as part of software protection scheme to prevent it from being pirated.

JavaME developers however suffers from a drawback because MIDP/CLDC specification does not include an API to obtain IMEI from mobile devices. However there are few phone manufacturers included this functionality through System.getPropery() calls.

Here's how to get IMEI number from mobile devices of different manufacturers
Nokia

JAVA:
  1. System.getProperty("phone.imei");
  2. System.getProperty("com.nokia.IMEI");

Note ; Requires signed midlet. S60 3rd edition device does not requires signing for this to work.

Sony-Ericsson

JAVA:
  1. System.getProperty("com.sonyericsson.imei");

Note ; might not work on all model, YMMV

Motorola

JAVA:
  1. System.getProperty("IMEI");
  2. System.getProperty("com.motorola.IMEI");

Samsung

JAVA:
  1. System.getProperty("com.samsung.imei");

Siemens

JAVA:
  1. System.getProperty("com.siemens.imei");

Hopefully this information can aid you in your J2ME programming projects.

Quick Tip :
It's quite hard to determine the phone model/manufacturer well ahead beforehand. For a more robust solution, I suggest that you combine the above call with System.getProperty("microedition.platform").

Tags: , , , , , , , ,

Bookmark this post :
  • co.mments
  • del.icio.us
  • digg
  • YahooMyWeb
  • description
  • StumbleUpon
  • Technorati

 

Recommended Reading

7 smashing comments for this post.

  1. Sebastian Said:

    Hi I just tried to retrieve the IMEI number on my nokia N80 using the code above, but it didn’t work. Is it necessary to sign the jar file before installing on the device ? If so how is it possible to sign jar files ?

    Thank you.

    Sebastian

  2. Carlos Montenegro Said:

    Hi, thanks very much for this information. I has just any more question: Is there any way (I think yes, but not sure) to get the phone manufacturer name?

  3. Cara Said:

    The property for Samsung devices does not work. Have you tried on a real device? If you did and it worked, what device was it?

  4. musthafa Said:

    blog is very useful. thanks a lot. expecting more.. dont u mind i would like to know about designing a desktop like look (icons arranged in grids)this is not in canvas…

  5. Kasun Said:

    Thank you very much.This blog is very useful.
    Plz carry on this task further

  6. hanane Said:

    thank’s for this information.

    can any one help me in developping an applet for IMEI traking?
    Best regards

  7. FiruzzZ Said:

    DOESN’T WORK

    System.out.println(”IMEI”+System.getProperty(”IMEI”));

    System.out.println(”IMEI”+System.getProperty(”phone.imei”));
    System.out.println(”IMEI”+System.getProperty(”com.nokia.IMEI”));

    System.out.println(”IMEI”+System.getProperty(”com.sonyericsson.imei”));

    System.out.println(”IMEI”+System.getProperty(”IMEI”));
    System.out.println(”IMEI”+System.getProperty(”com.motorola.IMEI”));

    System.out.println(”IMEI”+System.getProperty(”com.samsung.imei”));

    System.out.println(”IMEI”+System.getProperty(”com.siemens.imei”));

Leave a Comment

Subscribe by Email


Powered by FeedBlitz

 


Your Ad Here

Bad Behavior has blocked 0 access attempts in the last 7 days.