PIM API has one system property:
String |
Description |
---|---|
microedition.pim.version |
Returns the version string if PIM API is supported on the device. Otherwise returns null. |
The labels of supported features, described in the Class and Interface Description section, and list names are localized.
The methods PIMList.getFieldLabel(), PIMList.getAttributeLabel(), PIMList.getArrayElementLabel(), and PIMList.getName() are used for obtaining these localized labels.
Security vulnerable operations in PIM API belong to two function groups:
Read User Data Access
Write User Data Access
All methods which may throw a SecurityException (according to the API specification) are considered security vulnerable. Permission to access any security vulnerable operation are checked on every invocation.
If a database is opened as READ and an attempt to write is executed, a SecurityException is thrown.
The following table describes the security policy for the PIM API related function groups in devices that support the Nokia security policy (since Series 40 6th Edition Feature Pack 1):
Function group |
Identified Third Party Protection domain |
Unidentified Third Party Protection domain |
---|---|---|
Read User Data Access |
Default setting: Session Other settings: Blanket, Oneshot, No |
Default setting: Oneshot Other settings: Session, No |
Write User Data Access |
Default setting: Session Other settings: Blanket, Oneshot, No |
Default setting: Oneshot Other settings: Session, No |
The following table describes the security policy for the PIM API related function group in devices that support the MSA security policy:
Function group |
Identified Third Party Protection domain |
Unidentified Third Party Protection domain |
---|---|---|
Read User Data Access |
Default setting: Oneshot Other settings: Blanket, Session, No |
Default setting: Oneshot Other settings: No |
Write User Data Access |
Default setting: Oneshot Other settings: Blanket, Session, No |
Default setting: Oneshot Other settings: No |
Explanation for the table values are as follows:
"Blanket" is valid for every invocation of an API by a MIDlet suite until it is uninstalled or the permission is changed by the user.
"Session" is valid from the invocation of a MIDlet suite until it terminates. The user is prompted on or before the first invocation of the protected API or function. When the user re-invokes the MIDlet suite the prompt is repeated.
"Oneshot" means that the user is prompted every time when the API or a protected function is invocated.
"No" means that the MIDlet can’t access the protected function at all.
When a security prompt is presented to the user, the MIDlet suite name is not included in the dialog text.
Series 40 generates a prompt for each of the following protected PIM method invocations:
javax.microedition.pim.PIMList methods: items() items(PIMItem) items(java.lang.String) javax.microedition.pim.PIMItem methods: commit javax.microedition.pim.EventList methods: items javax.microedition.pim.EventList methods: removeEvent javax.microedition.pim.ContactList methods: removeContact
Note that opening or listing PIM lists (using PIM.openPIMList or PIM.listPIMLists) does not result in an explicit user authorization request to allow the MIDlet to read or write to the list. In this case authorization is given according to the MIDlet access rights only.