Hi,
I am working on a mission critical application, Where user SIM ID or MSISDN is required. Can any one tell me the way to get Unique SIM ID in J2ME. I am ready to sign the Midlet.
Regards,
Hi,
I am working on a mission critical application, Where user SIM ID or MSISDN is required. Can any one tell me the way to get Unique SIM ID in J2ME. I am ready to sign the Midlet.
Regards,
You might able to get it from System.getProperty(String property)
MSISDN, might or might not be on the SIM card. In general the phone does not know it's phone number, although some operators store that information on SIM card. Not all though. And there is no access to that from Java ME. And MSISDN is not really a unique SIM ID, as if someone's phone gets stolen, the operator can give you a new SIM card tied to the same phone number.
IMSI (International Mobile Subscriber Identity) might be available though system properties, but not on all phones. and by default that information is availabel only for MIDlets signed to operator or manufacturer domain.
http://www.forum.nokia.com/document/...C996A25D7.html
And getting your MIDlet signed to operator or manuacturer domain is not usually possible. (requires close partnering and Nokia signing requires that the MIDlet is eitehr Nokia branded or implemented by Nokia)
Would any other unique (or almost unique) identifier work for you? Like a timestamp of the first execution plus the device model through microedition.platform system property
Hartti
Hi,
In the Blackbery device user can view the SIM ID. I don't need MSISDN as such, I just need the SIM ID, if operator gives new SIM to the user, this thing could be handled by other process.
My application wants to make sure that the user (SIM) registered is the making a transaction.
SIMs are not changed frequently but phones are changed frequently.
I think there are some APDU commands which can return SIM ID. Can u help me in that.
Regards,
Blackberry has a lot of proprietary extensions. This seems to be one of those.
APDU package (of JSR-177, SATSA API) is not widely available (it is available on newer Series 40 phones though).
However, access to SIM Toolkit (which I think is required to access any SIM card identification data through APDU commands - I am making an educated guess here) requires operator signing. So again, this is not usually possible.
What about using username and password fields?
Hartti
Last edited by hartti; 2008-09-11 at 18:29. Reason: typo
Please correct me on this if I am wrong and educate me as well.
According to my assumptions there is and area(Memory Location) in SIM which can be accessed by the application. I read few articles about SIM Toolkit fews months back. Can i use signed (by Verisign) midlet to store and retrieve some byte of data.
and
can I add contact info into SIM through my midlet?
Regards,
Access to SIM toolkit requires that the phone supports APDU package (not all of them do) and that the MIDlet is signed to operator domain. Verisign signing is not enough.
The contacts in the SIM card can be accessed on Series 40 phones with JSR-75 PIM API. On S60 devices there is no access to the contacts on the SIM card (only to the contacts in the phone memory)
Hartti
Last edited by hartti; 2008-09-11 at 19:17. Reason: fixed typos and added Verisign comment